diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..e94d220 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,9 @@ +.git +.gradle +build +*.log +.DS_Store +.env +*.env +**/*.env +deploy-*.zip \ No newline at end of file diff --git a/gdgoc/.gitattributes b/.gitattributes similarity index 100% rename from gdgoc/.gitattributes rename to .gitattributes diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f9bfb43..dbd455a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -22,8 +22,12 @@ jobs: steps: - uses: actions/checkout@v4 + - uses: actions/setup-java@v4 - with: { distribution: temurin, java-version: 17 } + with: + distribution: temurin + java-version: 17 + - uses: gradle/actions/setup-gradle@v3 if: ${{ !env.ACT }} with: @@ -31,20 +35,18 @@ jobs: gradle-home-cache-cleanup: true - name: Create dummy .env for CI - working-directory: gdgoc run: echo "# ci dummy" > .env - name: Gradle build (skip tests) id: assemble - working-directory: gdgoc - env: { GRADLE_OPTS: "-Dorg.gradle.vfs.watch=false" } + env: + GRADLE_OPTS: "-Dorg.gradle.vfs.watch=false" run: | chmod +x ./gradlew - ./gradlew build -x test --no-daemon --stacktrace --info --no-watch-fs | tee ../build.log + ./gradlew build -x test --no-daemon --stacktrace --info --no-watch-fs | tee build.log - name: Gradle test (H2 in-memory) id: test - working-directory: gdgoc env: GRADLE_OPTS: "-Dorg.gradle.vfs.watch=false" SPRING_PROFILES_ACTIVE: test @@ -55,7 +57,7 @@ jobs: SPRING_JPA_DATABASE_PLATFORM: org.hibernate.dialect.H2Dialect SPRING_JPA_HIBERNATE_DDL_AUTO: create-drop SPRING_FLYWAY_ENABLED: "false" - run: ./gradlew test --no-daemon --stacktrace --info --no-watch-fs | tee ../test.log + run: ./gradlew test --no-daemon --stacktrace --info --no-watch-fs | tee test.log - name: Publish unit-test results (check UI) id: publish @@ -111,7 +113,6 @@ jobs: **CI status** ${{ steps.status.outputs.message }} - - name: Fail if any failed if: ${{ always() && (steps.assemble.outcome != 'success' || steps.test.outcome != 'success') }} - run: exit 1 \ No newline at end of file + run: exit 1 diff --git a/.github/workflows/deploy-dev.yml b/.github/workflows/deploy-dev.yml index 080abfe..524a153 100644 --- a/.github/workflows/deploy-dev.yml +++ b/.github/workflows/deploy-dev.yml @@ -24,51 +24,51 @@ jobs: docker build -t ${{ secrets.DOCKER_HUB_USERNAME }}/gdgoc-be-app-dev:latest . docker push ${{ secrets.DOCKER_HUB_USERNAME }}/gdgoc-be-app-dev:latest - - name: move files to Root - run: | - cp gdgoc/docker-compose-dev.yml ./docker-compose-dev.yml - cp gdgoc/deploy.dev.sh ./deploy.dev.sh - cp gdgoc/appspec.dev.yml ./appspec.yml + - name: Prepare appspec.yml (dev) + run: cp appspec.dev.yml appspec.yml - name: Create Deployment Package run: | - echo "DOCKER_HUB_USERNAME=${{ secrets.DOCKER_HUB_USERNAME }}" > .env - echo "DB_HOST=${{ secrets.DB_HOST }}" >> .env - echo "DB_PORT=${{ secrets.DB_PORT }}" >> .env - echo "DB_NAME_DEV=${{ secrets.DB_NAME_DEV }}" >> .env - echo "DB_USERNAME=${{ secrets.DB_USERNAME }}" >> .env - echo "DB_PASSWORD=${{ secrets.DB_PASSWORD }}" >> .env - echo "GOOGLE_CLIENT_ID=${{ secrets.GOOGLE_CLIENT_ID }}" >> .env - echo "GOOGLE_CLIENT_SECRET=${{ secrets.GOOGLE_CLIENT_SECRET }}" >> .env - echo "GOOGLE_REDIRECT_URI=${{ secrets.GOOGLE_REDIRECT_URI }}" >> .env - echo "GOOGLE_ISSUER=${{secrets.GOOGLE_ISSUER}}" >> .env - echo "SELF_ISSUER=${{secrets.SELF_ISSUER}}" >> .env - echo "SECRET_KEY=${{secrets.SECRET_KEY}}" >> .env - echo "AWS_ACCESS_KEY_ID=${{ secrets.AWS_ACCESS_KEY_ID }}" >> .env - echo "AWS_SECRET_ACCESS_KEY=${{ secrets.AWS_SECRET_ACCESS_KEY }}" >> .env - echo "AWS_REGION=${{ secrets.AWS_REGION }}" >> .env - echo "AWS_RESOURCE_BUCKET=${{secrets.AWS_RESOURCE_BUCKET}}" >> .env - echo "AWS_TEST_RESOURCE_BUCKET=${{secrets.AWS_TEST_RESOURCE_BUCKET}}" >> .env - echo "GMAIL=${{secrets.GMAIL}}" >> .env - echo "GMAIL_PASSWORD=${{secrets.GMAIL_PASSWORD}}" >> .env - echo "DOZZLE_USERNAME=${{ secrets.DOZZLE_USERNAME }}" >> .env - echo "DOZZLE_PASSWORD=${{ secrets.DOZZLE_PASSWORD }}" >> .env - - zip -r deploy.zip .env docker-compose-dev.yml deploy.dev.sh appspec.yml + cat > .env < .env - echo "DB_HOST=${{ secrets.DB_HOST }}" >> .env - echo "DB_PORT=${{ secrets.DB_PORT }}" >> .env - echo "DB_NAME=${{ secrets.DB_NAME }}" >> .env - echo "DB_USERNAME=${{ secrets.DB_USERNAME }}" >> .env - echo "DB_PASSWORD=${{ secrets.DB_PASSWORD }}" >> .env - echo "GOOGLE_CLIENT_ID=${{ secrets.GOOGLE_CLIENT_ID }}" >> .env - echo "GOOGLE_CLIENT_SECRET=${{ secrets.GOOGLE_CLIENT_SECRET }}" >> .env - echo "GOOGLE_REDIRECT_URI=${{ secrets.GOOGLE_REDIRECT_URI }}" >> .env - echo "GOOGLE_ISSUER=${{secrets.GOOGLE_ISSUER}}" >> .env - echo "SELF_ISSUER=${{secrets.SELF_ISSUER}}" >> .env - echo "SECRET_KEY=${{secrets.SECRET_KEY}}" >> .env - echo "AWS_ACCESS_KEY_ID=${{ secrets.AWS_ACCESS_KEY_ID }}" >> .env - echo "AWS_SECRET_ACCESS_KEY=${{ secrets.AWS_SECRET_ACCESS_KEY }}" >> .env - echo "AWS_REGION=${{ secrets.AWS_REGION }}" >> .env - echo "AWS_RESOURCE_BUCKET=${{secrets.AWS_RESOURCE_BUCKET}}" >> .env - echo "AWS_TEST_RESOURCE_BUCKET=${{secrets.AWS_TEST_RESOURCE_BUCKET}}" >> .env - echo "GMAIL=${{secrets.GMAIL}}" >> .env - echo "GMAIL_PASSWORD=${{secrets.GMAIL_PASSWORD}}" >> .env - echo "DOZZLE_USERNAME=${{ secrets.DOZZLE_USERNAME }}" >> .env - echo "DOZZLE_PASSWORD=${{ secrets.DOZZLE_PASSWORD }}" >> .env + cat > .env < answers = Map.of( + "gdgUserMotive", "그냥", + "gdgUserStory", "삶", + "gdgInterest", List.of("FrontEnd", "BackEnd"), + "gdgPeriod", List.of("23-1", "24-1"), + "gdgRoute", "에타", + "gdgExpect", List.of("djqt"), + "gdgWish", List.of("a", "b", "c"), + "gdgFeedback", "asdfsdf" + ); + + + RecruitMember savedMember = RecruitMember.builder() + .id(1L) // 저장될 ID + .name("김소연") + .grade("4") + .studentId("122123388") + .enrolledClassification(EnrolledClassification.FULL_REGISTRATION) + .phoneNumber("010-1111-2332") + .nationality("대한민국") + .email("abc@gmail.com") + .gender(Gender.FEMALE) + .birth(LocalDate.of(2002, 8, 18)) + .major("컴퓨터공학과") + .doubleMajor("복수전공 인공지능공학과") + .isPayed(true) + .build(); + + } +} diff --git a/gdgoc/src/test/java/inha/gdgoc/domain/study/service/StudyAttendeeServiceTest.java b/src/test/java/inha/gdgoc/domain/study/service/StudyAttendeeServiceTest.java similarity index 100% rename from gdgoc/src/test/java/inha/gdgoc/domain/study/service/StudyAttendeeServiceTest.java rename to src/test/java/inha/gdgoc/domain/study/service/StudyAttendeeServiceTest.java diff --git a/gdgoc/src/test/java/inha/gdgoc/domain/study/service/StudyServiceTest.java b/src/test/java/inha/gdgoc/domain/study/service/StudyServiceTest.java similarity index 100% rename from gdgoc/src/test/java/inha/gdgoc/domain/study/service/StudyServiceTest.java rename to src/test/java/inha/gdgoc/domain/study/service/StudyServiceTest.java diff --git a/gdgoc/src/test/resources/application-test.yml b/src/test/resources/application-test.yml similarity index 100% rename from gdgoc/src/test/resources/application-test.yml rename to src/test/resources/application-test.yml