Skip to content

traffix-a22-data-quality bump deps #33

traffix-a22-data-quality bump deps

traffix-a22-data-quality bump deps #33

name: CI/CD traffic-a22-data-quality
on:
push:
paths:
- "traffic-a22-data-quality/**"
- ".github/workflows/ci-traffic-a22-data-quality.yml"
- "!*.md"
env:
WORKING_DIRECTORY: traffic-a22-data-quality
PROJECT_NAME: odh-mobility-el-traffic-a22-data-quality
DOCKER_IMAGE: ghcr.io/${{ github.repository }}/odh-mobility-el-traffic-a22-data-quality
DOCKER_TAG: ${{ github.sha }}
jobs:
test:
runs-on: ubuntu-22.04
steps:
- name: Checkout source code
uses: noi-techpark/github-actions/checkout@v2
- name: REUSE Compliance Check
uses: fsfe/reuse-action@v1
- name: Setup go
uses: actions/setup-go@v4
with:
go-version-file: ${{ env.WORKING_DIRECTORY }}/src/go.mod
- name: Run automated tests
run: go test ./...
working-directory: ${{ env.WORKING_DIRECTORY }}/src
deploy-test:
runs-on: ubuntu-22.04
needs: test
if: github.ref == 'refs/heads/main'
concurrency: deploy-test
steps:
- name: Checkout source code
uses: actions/checkout@v3
- name: Setup go
uses: actions/setup-go@v4
with:
go-version-file: ${{ env.WORKING_DIRECTORY }}/src/go.mod
- name: Create .env file
uses: noi-techpark/github-actions/env-file@v2
with:
working-directory: ${{ env.WORKING_DIRECTORY }}
env:
X_COMPOSE_PROJECT_NAME: ${{ env.PROJECT_NAME }}
X_DOCKER_IMAGE: ${{ env.DOCKER_IMAGE }}
X_DOCKER_TAG: ${{ env.DOCKER_TAG }}
X_ODH_TOKEN_URL: https://auth.opendatahub.testingmachine.eu/auth/realms/noi/protocol/openid-connect/token
X_ODH_CLIENT_ID: odh-a22-dataprocessor
X_ODH_CLIENT_SECRET: ${{ secrets.COMBINED_CLIENT_SECRET_TEST }}
X_BDP_BASE_URL: https://share.opendatahub.testingmachine.eu
X_BDP_PROVENANCE_VERSION: ${{ github.sha }}
X_BDP_PROVENANCE_NAME: ${{ env.PROJECT_NAME }}
X_BDP_ORIGIN: a22
X_NINJA_BASE_URL: https://mobility.api.opendatahub.testingmachine.eu
X_NINJA_REFERER: ${{ env.PROJECT_NAME }}
X_NINJA_QUERY_LIMIT: 50000
X_EL_STATION_TYPE: TrafficSensor
X_EL_PARENT_STATION_TYPE: TrafficDirection
X_EL_BASE_PERIOD: 600
X_LOG_LEVEL: DEBUG
# run once per day, calculates the previous day's sums
X_SCHEDULER_CRON: "0 10 4 * * *"
- name: Build go application
run: go build -o main main.go
working-directory: ${{ env.WORKING_DIRECTORY }}/src
- name: Build and push
uses: noi-techpark/github-actions/docker-build-and-push@v2
with:
working-directory: ${{ env.WORKING_DIRECTORY }}/infrastructure
docker-username: ${{ github.actor }}
docker-password: ${{ secrets.GITHUB_TOKEN }}
- name: Deploy application
uses: noi-techpark/github-actions/docker-deploy@v2
with:
working-directory: ${{ env.WORKING_DIRECTORY }}/infrastructure/ansible
hosts: 'test'
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
docker-username: 'noi-techpark-bot'
docker-password: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}
project-name: ${{ env.PROJECT_NAME }}
deploy-prod:
runs-on: ubuntu-22.04
needs: test
if: github.ref == 'refs/heads/prod'
concurrency: deploy-prod
steps:
- name: Checkout source code
uses: actions/checkout@v3
- name: Setup go
uses: actions/setup-go@v4
with:
go-version-file: ${{ env.WORKING_DIRECTORY }}/src/go.mod
- name: Create .env file
uses: noi-techpark/github-actions/env-file@v2
with:
working-directory: ${{ env.WORKING_DIRECTORY }}
env:
X_COMPOSE_PROJECT_NAME: ${{ env.PROJECT_NAME }}
X_DOCKER_IMAGE: ${{ env.DOCKER_IMAGE }}
X_DOCKER_TAG: ${{ env.DOCKER_TAG }}
X_ODH_TOKEN_URL: https://auth.opendatahub.com/auth/realms/noi/protocol/openid-connect/token
X_ODH_CLIENT_ID: odh-a22-dataprocessor
X_ODH_CLIENT_SECRET: ${{ secrets.COMBINED_CLIENT_SECRET_PROD }}
X_BDP_BASE_URL: https://mobility.share.opendatahub.com
X_BDP_PROVENANCE_VERSION: ${{ github.sha }}
X_BDP_PROVENANCE_NAME: ${{ env.PROJECT_NAME }}
X_BDP_ORIGIN: a22
X_NINJA_BASE_URL: https://mobility.api.opendatahub.com
X_NINJA_REFERER: ${{ env.PROJECT_NAME }}
X_NINJA_QUERY_LIMIT: 50000
X_EL_STATION_TYPE: TrafficSensor
X_EL_PARENT_STATION_TYPE: TrafficDirection
X_EL_BASE_PERIOD: 600
X_LOG_LEVEL: INFO
# run once per day, calculates the previous day's sums
X_SCHEDULER_CRON: "0 10 4 * * *"
- name: Build go application
run: go build -o main main.go
working-directory: ${{ env.WORKING_DIRECTORY }}/src
- name: Build and push
uses: noi-techpark/github-actions/docker-build-and-push@v2
with:
working-directory: ${{ env.WORKING_DIRECTORY }}/infrastructure
docker-username: ${{ github.actor }}
docker-password: ${{ secrets.GITHUB_TOKEN }}
- name: Deploy application
uses: noi-techpark/github-actions/docker-deploy@v2
with:
working-directory: ${{ env.WORKING_DIRECTORY }}/infrastructure/ansible
hosts: 'prod'
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
docker-username: 'noi-techpark-bot'
docker-password: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }}
project-name: ${{ env.PROJECT_NAME }}