feat(release): modify and recompile requirements #673
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Docker | |
on: | |
push: | |
branches: | |
- develop | |
release: | |
types: [published] | |
jobs: | |
build-backend: | |
name: Build backend image | |
runs-on: ubuntu-latest | |
steps: | |
- | |
name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
submodules: True | |
- | |
name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- | |
name: Login to GHCR | |
uses: docker/login-action@v2 | |
if: github.event_name != 'pull_request' | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- | |
name: Generate metadata for wheels image | |
id: meta-wheels | |
uses: docker/metadata-action@v4 | |
with: | |
images: ghcr.io/${{ github.repository_owner }}/geonature-backend | |
flavor: | | |
suffix=-wheels | |
tags: | | |
type=ref,event=branch | |
type=ref,event=tag | |
- | |
name: Build and export wheels image | |
id: build-wheels | |
uses: docker/build-push-action@v4 | |
with: | |
context: . | |
file: ./backend/Dockerfile | |
target: wheels | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: ${{ steps.meta-wheels.outputs.tags }} | |
labels: ${{ steps.meta-wheels.outputs.labels }} | |
- | |
name: Generate metadata for prod image | |
id: meta-prod | |
uses: docker/metadata-action@v4 | |
with: | |
images: ghcr.io/${{ github.repository_owner }}/geonature-backend | |
tags: | | |
type=ref,event=branch | |
type=ref,event=tag | |
- | |
name: Build and export prod image | |
id: build-prod | |
uses: docker/build-push-action@v4 | |
with: | |
context: . | |
file: ./backend/Dockerfile | |
target: prod | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: ${{ steps.meta-prod.outputs.tags }} | |
labels: ${{ steps.meta-prod.outputs.labels }} | |
build-frontend: | |
name: Build frontend image | |
runs-on: ubuntu-latest | |
steps: | |
- | |
name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
submodules: True | |
- | |
name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v2 | |
- | |
name: Login to GHCR | |
uses: docker/login-action@v2 | |
if: github.event_name != 'pull_request' | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- | |
name: Generate metadata for source image | |
id: meta-source | |
uses: docker/metadata-action@v4 | |
with: | |
images: ghcr.io/${{ github.repository_owner }}/geonature-frontend | |
flavor: | | |
suffix=-source | |
tags: | | |
type=ref,event=branch | |
type=ref,event=tag | |
- | |
name: Build and export source image | |
uses: docker/build-push-action@v4 | |
with: | |
context: . | |
file: ./frontend/Dockerfile | |
target: source | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: ${{ steps.meta-source.outputs.tags }} | |
labels: ${{ steps.meta-source.outputs.labels }} | |
- | |
name: Generate metadata for nginx image | |
id: meta-nginx | |
uses: docker/metadata-action@v4 | |
with: | |
images: ghcr.io/${{ github.repository_owner }}/geonature-frontend | |
flavor: | | |
suffix=-nginx | |
tags: | | |
type=ref,event=branch | |
type=ref,event=tag | |
- | |
name: Build and export nginx image | |
uses: docker/build-push-action@v4 | |
with: | |
context: . | |
file: ./frontend/Dockerfile | |
target: prod-base | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: ${{ steps.meta-nginx.outputs.tags }} | |
labels: ${{ steps.meta-nginx.outputs.labels }} | |
- | |
name: Generate metadata for prod image | |
id: meta-prod | |
uses: docker/metadata-action@v4 | |
with: | |
images: ghcr.io/${{ github.repository_owner }}/geonature-frontend | |
tags: | | |
type=ref,event=branch | |
type=ref,event=tag | |
- | |
name: Build and export prod image | |
uses: docker/build-push-action@v4 | |
with: | |
context: . | |
file: ./frontend/Dockerfile | |
target: prod | |
push: ${{ github.event_name != 'pull_request' }} | |
tags: ${{ steps.meta-prod.outputs.tags }} | |
labels: ${{ steps.meta-prod.outputs.labels }} |