Skip to content

Strip #

Strip # #166

name: 'Generate typescript types'
on:
workflow_dispatch:
inputs: { }
push:
branches:
- master
env:
AWS_ACCESS_KEY_ID: ${{ secrets.CI_AWS_CLIENT_ID }}
AWS_DEFAULT_REGION: eu-west-1
AWS_SECRET_ACCESS_KEY: ${{ secrets.CI_AWS_CLIENT_SECRET }}
NDLA_AWS_ECR_REPO: ${{ secrets.NDLA_AWS_ECR_REPO }}
CI_RELEASE_ROLE: ${{ secrets.CI_RELEASE_ROLE }}
CI_GITHUB_TOKEN: ${{ secrets.CI_GITHUB_TOKEN }}
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }}
DOCKER_HUB_USERNAME: ${{ secrets.DOCKER_HUB_USERNAME }}
NDLA_RELEASES: ${{ secrets.NDLA_RELEASES }}
KNOWIT_EMAIL: ${{ secrets.KNOWIT_EMAIL }}
jobs:
generate_typescript:
name: Generate typescript types
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
token: ${{ secrets.CI_GITHUB_TOKEN }}
- uses: coursier/cache-action@v6
- uses: actions/setup-java@v3
with:
distribution: temurin
java-version: '21'
- name: Cache Maven packages
uses: actions/cache@v3
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: Login to ECR repo
run: RES=$(aws sts assume-role --role-arn $CI_RELEASE_ROLE --role-session-name
github-actions-ecr-login) AWS_ACCESS_KEY_ID=$(echo $RES | jq -r .Credentials.AccessKeyId)
AWS_SECRET_ACCESS_KEY=$(echo $RES | jq -r .Credentials.SecretAccessKey) AWS_SESSION_TOKEN=$(echo
$RES | jq -r .Credentials.SessionToken) aws ecr get-login-password --region
eu-central-1 | docker login --username AWS --password-stdin $NDLA_AWS_ECR_REPO
- name: Login to dockerhub
run: echo $DOCKER_HUB_PASSWORD | docker login --username $DOCKER_HUB_USERNAME
--password-stdin
- name: Generate typescript types
run: mvn compile typescript-generator:generate
- name: Commit typescript changes
continue-on-error: true
run: |
git config user.email "$KNOWIT_EMAIL"
git config user.name "github-actions"
git add typescript/*
git commit -m "AUTOMATION: Generated new typescript files"
git push