Skip to content

Initial add reports #916

Initial add reports

Initial add reports #916

Workflow file for this run

name: CI
on:
push:
jobs:
ci:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SRM_DEVOPS_DEPLOY_KEY: ${{ secrets.SRM_DEVOPS_DEPLOY_KEY }}
IMAGE_NAME: srm-etl
CHART_NAME: etl
DB_IMAGE_NAME: srm-etl-db
run: |
if [[ "${GITHUB_REF}" =~ ^refs/tags/.* ]]; then
TAG_NAME="${GITHUB_REF/refs\/tags\//}"
else
TAG_NAME=""
fi
BUILD_ARGS=""
if docker pull "ghcr.io/kolzchut/${IMAGE_NAME}:latest"; then
BUILD_ARGS="--cache-from ghcr.io/kolzchut/${IMAGE_NAME}:latest"
fi &&\
docker build -t api $BUILD_ARGS . &&\
BUILD_ARGS=""
if docker pull "ghcr.io/kolzchut/${DB_IMAGE_NAME}:latest"; then
BUILD_ARGS="--cache-from ghcr.io/kolzchut/${DB_IMAGE_NAME}:latest"
fi &&\
docker build -t db $BUILD_ARGS db &&\
echo "${GITHUB_TOKEN}" | docker login https://ghcr.io -u kolzchut --password-stdin &&\
docker tag api "ghcr.io/kolzchut/${IMAGE_NAME}:${GITHUB_SHA}" &&\
docker push "ghcr.io/kolzchut/${IMAGE_NAME}:${GITHUB_SHA}" &&\
docker tag db "ghcr.io/kolzchut/${DB_IMAGE_NAME}:${GITHUB_SHA}" &&\
docker push "ghcr.io/kolzchut/${DB_IMAGE_NAME}:${GITHUB_SHA}" &&\
if [ "${GITHUB_REF}" == "refs/heads/main" ] || [ "${TAG_NAME}" != "" ]; then
echo "${SRM_DEVOPS_DEPLOY_KEY}" > srm_devops_deploy_key &&\
chmod 400 srm_devops_deploy_key &&\
export GIT_SSH_COMMAND="ssh -i $(pwd)/srm_devops_deploy_key -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" &&\
git clone git@github.com:kolzchut/srm-devops.git &&\
git config --global user.name "srm-devops CI" &&\
git config --global user.email "srm-devops-ci@localhost" &&\
cd srm-devops &&\
VALUES_AUTO_UPDATED_FILE="helm/${CHART_NAME}/values.auto-updated.yaml" &&\
IMAGE="ghcr.io/kolzchut/${IMAGE_NAME}:${GITHUB_SHA}" &&\
DB_IMAGE="ghcr.io/kolzchut/${DB_IMAGE_NAME}:${GITHUB_SHA}" &&\
if [ "${TAG_NAME}" != "" ]; then
VALUES_AUTO_UPDATED_FILE="helm/${CHART_NAME}/values.auto-updated.production.yaml" &&\
docker tag "${IMAGE}" "ghcr.io/kolzchut/${IMAGE_NAME}:${TAG_NAME}-${GITHUB_SHA}" &&\
docker push "ghcr.io/kolzchut/${IMAGE_NAME}:${TAG_NAME}-${GITHUB_SHA}" &&\
IMAGE="ghcr.io/kolzchut/${IMAGE_NAME}:${TAG_NAME}-${GITHUB_SHA}" &&\
docker tag "${DB_IMAGE}" "ghcr.io/kolzchut/${DB_IMAGE_NAME}:${TAG_NAME}-${GITHUB_SHA}" &&\
docker push "ghcr.io/kolzchut/${DB_IMAGE_NAME}:${TAG_NAME}-${GITHUB_SHA}"
fi &&\
bin/update_yaml.py '{"'"${CHART_NAME}"'":{"image":"'"${IMAGE}"'"}}' "${VALUES_AUTO_UPDATED_FILE}" &&\
git add "${VALUES_AUTO_UPDATED_FILE}" &&\
git commit -m "update image: ${VALUES_AUTO_UPDATED_FILE}" &&\
git push origin main
fi &&\
if [ "${GITHUB_REF}" == "refs/heads/main" ]; then
docker tag api "ghcr.io/kolzchut/${IMAGE_NAME}:latest" &&\
docker push "ghcr.io/kolzchut/${IMAGE_NAME}:latest"
fi
elasticsearch:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
IMAGE_NAME: srm-etl-elasticsearch
run: |
if [[ "${GITHUB_REF}" =~ ^refs/tags/.* ]]; then
TAG_NAME="${GITHUB_REF/refs\/tags\//}"
else
TAG_NAME=""
fi &&\
BUILD_ARGS="" &&\
if docker pull "ghcr.io/kolzchut/${IMAGE_NAME}:latest"; then
BUILD_ARGS="--cache-from ghcr.io/kolzchut/${IMAGE_NAME}:latest"
fi &&\
docker build -t elasticsearch $BUILD_ARGS elasticsearch &&\
echo "${GITHUB_TOKEN}" | docker login https://ghcr.io -u kolzchut --password-stdin &&\
docker tag elasticsearch "ghcr.io/kolzchut/${IMAGE_NAME}:${GITHUB_SHA}" &&\
docker push "ghcr.io/kolzchut/${IMAGE_NAME}:${GITHUB_SHA}" &&\
if [ "${TAG_NAME}" != "" ]; then
docker tag elasticsearch "ghcr.io/kolzchut/${IMAGE_NAME}:${TAG_NAME}-${GITHUB_SHA}" &&\
docker push "ghcr.io/kolzchut/${IMAGE_NAME}:${TAG_NAME}-${GITHUB_SHA}"
fi