From 70f1b5b7f9884a68a1ac062d2dcbe0616036a212 Mon Sep 17 00:00:00 2001 From: "Dukuze D. Savio" Date: Tue, 21 Nov 2023 14:01:57 +0900 Subject: [PATCH 1/3] Create django.yml --- .github/workflows/django.yml | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/workflows/django.yml diff --git a/.github/workflows/django.yml b/.github/workflows/django.yml new file mode 100644 index 0000000..58ef0ab --- /dev/null +++ b/.github/workflows/django.yml @@ -0,0 +1,30 @@ +name: Django CI + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +jobs: + build: + + runs-on: ubuntu-latest + strategy: + max-parallel: 4 + matrix: + python-version: [3.7, 3.8, 3.9] + + steps: + - uses: actions/checkout@v3 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v3 + with: + python-version: ${{ matrix.python-version }} + - name: Install Dependencies + run: | + python -m pip install --upgrade pip + pip install -r requirements.txt + - name: Run Tests + run: | + python manage.py test From e213970e460e37f50980532f06efc9f947185ad5 Mon Sep 17 00:00:00 2001 From: "Dukuze D. Savio" Date: Tue, 21 Nov 2023 14:03:16 +0900 Subject: [PATCH 2/3] Update django.yml --- .github/workflows/django.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/django.yml b/.github/workflows/django.yml index 58ef0ab..ba84d45 100644 --- a/.github/workflows/django.yml +++ b/.github/workflows/django.yml @@ -13,7 +13,7 @@ jobs: strategy: max-parallel: 4 matrix: - python-version: [3.7, 3.8, 3.9] + python-version: [3.9] steps: - uses: actions/checkout@v3 From c9d3718b0a72ac01805a541b0d0921d999f336d9 Mon Sep 17 00:00:00 2001 From: "Dukuze D. Savio" Date: Tue, 21 Nov 2023 14:19:56 +0900 Subject: [PATCH 3/3] Update django.yml --- .github/workflows/django.yml | 41 ++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/.github/workflows/django.yml b/.github/workflows/django.yml index ba84d45..cb3bec0 100644 --- a/.github/workflows/django.yml +++ b/.github/workflows/django.yml @@ -28,3 +28,44 @@ jobs: - name: Run Tests run: | python manage.py test + + push_to_registry: + name: Push Docker image to Docker Hub + runs-on: ubuntu-latest + env: + ACTIONS_ALLOW_UNSECURE_COMMANDS: true + steps: + - name: Check out the repo + uses: actions/checkout@v4 + + - name: Log in to Docker Hub + uses: docker/login-action@f4ef78c080cd8ba55a85445d5b36e214a81df20a + with: + username: ${{ secrets.DOCKER_USER }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Extract metadata (tags, labels) for Docker + id: meta + uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7 + with: + images: dudosart/btre-pro + + - name: Set image version + run: echo "::set-env name=IMAGE_VERSION::$(date +'%Y%m%d%H%M%S')" + + - name: Debug Meta Tags + run: echo "Meta Tags:${{ steps.meta.outputs.tags }}" + + - name: Debug Image Version + run: echo "Image Version:${{ env.IMAGE_VERSION }}" + + - name: Build and push Docker image + uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671 + with: + context: . + file: ./Dockerfile + push: true + tags: | + dudosart/btre-pro:latest + dudosart/btre-pro:${{ github.sha }} + labels: ${{ steps.meta.outputs.labels }}