Skip to content

dc/echarging-ocpi: refactor and add location polling to ocpi data col… #8

dc/echarging-ocpi: refactor and add location polling to ocpi data col…

dc/echarging-ocpi: refactor and add location polling to ocpi data col… #8

name: CI/CD dc-echarging-ocpi-neogy
on:
push:
paths:
- "collectors/echarging-ocpi/**"
- ".github/workflows/dc-echarging-ocpi-neogy.yml"
env:
WORKING_DIRECTORY: collectors/echarging-ocpi
DOCKER_IMAGE: ghcr.io/noi-techpark/opendatahub-collectors/dc-echarging-ocpi
DOCKER_TAG: ${{ github.sha }}
KUBERNETES_NAMESPACE: collector
jobs:
build:
runs-on: ubuntu-22.04
concurrency: dc-echarging-ocpi-neogy-build
steps:
- name: Checkout source code
uses: actions/checkout@v4
- name: Build and push images
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 }}
deploy-test:
if: github.ref == 'refs/heads/main'
needs:
- build
runs-on: ubuntu-22.04
concurrency: dc-echarging-ocpi-neogy-deploy-test
environment: test
env:
VALUES_YAML: collectors/echarging-ocpi/infrastructure/helm/neogy.yaml
K8S_NAME: dc-echarging-ocpi-neogy
steps:
- name: Checkout source code
uses: actions/checkout@v4
- name: Write environment-specific Helm values
run: |
cat <<EOF > override.yml
image:
repository: ${{ env.DOCKER_IMAGE }}
tag: ${{ env.DOCKER_TAG }}
pullPolicy: "IfNotPresent"
env:
LOGLEVEL: "INFO"
envSecret:
OCPI_TOKENS: ${{ secrets.ECHARGING_OCPI_NEOGY_TOKENS }}
PULL_LOCATIONS_ENDPOINT: ${{ secrets.ECHARGING_NEOGY_OCPI_URL}}?limit=200
PULL_TOKEN: "${{ secrets.ECHARGING_NEOGY_OCPI_TOKEN_C }}"
EOF
# Merge yaml files https://mikefarah.gitbook.io/yq/operators/multiply-merge
yq -i '. *= load("override.yml")' ${{env.VALUES_YAML}}
- name: Deploy on cluster
uses: noi-techpark/github-actions/helm-deploy@v2
with:
k8s-name: ${{ env.K8S_NAME }}
k8s-namespace: collector
chart-path: helm/generic-collector
values-file: ${{ env.VALUES_YAML }}
aws-access-key-id: ${{ secrets.AWS_DEV_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_DEV_ACCESS_KEY_SECRET }}
aws-eks-cluster-name: aws-main-eu-01
aws-region: eu-west-1