diff --git a/.github/workflows/build-and-push.yaml b/.github/workflows/build-and-push.yml similarity index 80% rename from .github/workflows/build-and-push.yaml rename to .github/workflows/build-and-push.yml index 48cb40d..6d641b5 100644 --- a/.github/workflows/build-and-push.yaml +++ b/.github/workflows/build-and-push.yml @@ -11,17 +11,13 @@ jobs: # 개발 환경 build-and-push-dev: runs-on: ubuntu-latest - if: github.ref == 'refs/heads/dev' + #if: github.ref == 'refs/heads/dev' + if: 1 == 2 environment: development steps: - name: Checkout Repository uses: actions/checkout@v4 - - - - name: Set up QEMU - # 다중 플랫폼(Docker) 이미지를 빌드할 수 있도록 해준다. - uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx @@ -47,7 +43,6 @@ jobs: file: Dockerfile build-args: | PROFILE=${{ vars.PROFILE }} - env: POSTGRESQL_POSTGRES_PASSWORD=${{secrets.POSTGRESQL_POSTGRES_PASSWORD}} POSTGRES_DB=${{ secrets.POSTGRES_DB }} POSTGRES_PASSWORD=${{ secrets.POSTGRES_PASSWORD }} @@ -55,8 +50,7 @@ jobs: TZ=${{ vars.TZ }} push: true # 이미지를 레지스트리에 푸시합니다. - tags: ${{ secrets.DOCKERHUB_USERNAME }}/loan-postgres:${{ github.sha }} - platforms: linux/amd64,linux/arm64,linux/arm/v7 + tags: ${{ secrets.DOCKERHUB_USERNAME }}/loan-postgres-dev:${{ github.sha }} # 운영 환경 build-and-push-prod: @@ -68,11 +62,6 @@ jobs: name: Checkout Repository uses: actions/checkout@v4 - - - name: Set up QEMU - # 다중 플랫폼(Docker) 이미지를 빌드할 수 있도록 해준다. - uses: docker/setup-qemu-action@v3 - - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 @@ -97,7 +86,6 @@ jobs: file: Dockerfile build-args: | PROFILE=${{ vars.PROFILE }} - env: POSTGRESQL_POSTGRES_PASSWORD=${{ secrets.POSTGRESQL_POSTGRES_PASSWORD }} POSTGRES_DB=${{ secrets.POSTGRES_DB }} POSTGRES_PASSWORD=${{ secrets.POSTGRES_PASSWORD }} @@ -105,5 +93,4 @@ jobs: TZ=${{ vars.TZ }} push: true # 이미지를 레지스트리에 푸시합니다. - tags: ${{ secrets.DOCKERHUB_USERNAME }}/loan-postgres:${{ github.sha }} - platforms: linux/amd64,linux/arm64,linux/arm/v7 \ No newline at end of file + tags: ${{ secrets.DOCKERHUB_USERNAME }}/loan-postgres-prod:${{ github.sha }} \ No newline at end of file diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml new file mode 100644 index 0000000..46e8bcc --- /dev/null +++ b/.github/workflows/pull-request.yml @@ -0,0 +1,49 @@ +name: PR Pipeline + +on: + pull_request: + branches: + - main + +jobs: + # 개발 환경 + pull_request_build_test: + runs-on: ubuntu-latest + environment: production + steps: + - + name: Checkout Repository + uses: actions/checkout@v4 + + - + name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + # Docker Buildx를 설정합니다. + + - + name: Login to Docker Hub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + # GitHub Secret에서 Docker Hub 사용자 이름을 가져옵니다. + password: ${{ secrets.DOCKERHUB_TOKEN }} + # GitHub Secret에서 Docker Hub 액세스 토큰을 가져옵니다. + + - + name: Build and Push + uses: docker/build-push-action@v6 + with: + # 빌드 컨텍스트 : Dockerfile이 있는 위치 + context: . + # Dockerfile의 경로 + file: Dockerfile + build-args: | + PROFILE=${{ vars.PROFILE }} + POSTGRESQL_POSTGRES_PASSWORD=${{secrets.POSTGRESQL_POSTGRES_PASSWORD}} + POSTGRES_DB=${{ secrets.POSTGRES_DB }} + POSTGRES_PASSWORD=${{ secrets.POSTGRES_PASSWORD }} + POSTGRES_USER=${{ secrets.POSTGRES_USER }} + TZ=${{ vars.TZ }} + + push: true # 이미지를 레지스트리에 푸시합니다. + tags: ${{ secrets.DOCKERHUB_USERNAME }}/loan-postgres:${{ github.sha }} \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index d2252a7..05f8f90 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,11 +12,18 @@ RUN apt-get update && apt-get install -y \ && rm -rf /var/lib/apt/lists/* # 환경별 변수 -ENV POSTGRESQL_POSTGRES_PASSWORD -ENV POSTGRES_DB -ENV POSTGRES_PASSWORD -ENV POSTGRES_USER -ENV TZ + +ARG POSTGRESQL_POSTGRES_PASSWORD +ARG POSTGRES_DB +ARG POSTGRES_PASSWORD +ARG POSTGRES_USER +ARG TZ + +ENV POSTGRESQL_POSTGRES_PASSWORD=${POSTGRESQL_POSTGRES_PASSWORD} +ENV POSTGRES_DB=${POSTGRES_DB} +ENV POSTGRES_PASSWORD=${POSTGRES_PASSWORD} +ENV POSTGRES_USER=${POSTGRES_USER} +ENV TZ=${TZ} ARG PROFILE=local diff --git a/README.md b/README.md index 54907fe..5f8a710 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,5 @@ # PostgreSQL 인프라 관리 프로젝트 + +# compose.xml 추가 + # Github Acions 추가 \ No newline at end of file