From 435c30cb2aa81cce6ab4969b7d9cace4d36f07b2 Mon Sep 17 00:00:00 2001 From: Mikko Siukola Date: Tue, 17 Sep 2024 15:42:43 +0300 Subject: [PATCH 1/4] OY-4937 Add actions-build --- .github/workflows/build.yml | 124 ++++++++++++++++++++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 .github/workflows/build.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 000000000..ab8b054f3 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,124 @@ +name: Tarjonta-service + +on: + workflow_dispatch: + push: + paths-ignore: + - '**.md' + +jobs: + test-and-build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: Cache local Maven repository + uses: actions/cache@v4 + with: + path: ~/.m2/repository + key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} + restore-keys: | + ${{ runner.os }}-maven- + + - name: Set up JDK 8 + uses: actions/setup-java@v4 + with: + java-version: '8' + distribution: 'corretto' + + - uses: szenius/set-timezone@v1.0 + with: + timezoneLinux: "Europe/Helsinki" + + - name: Build with Maven + env: + GITHUB_TOKEN: ${{ github.token }} + run: mvn clean package -B -Dbranch=${GITHUB_REF_NAME} -Drevision=${GITHUB_SHA} -DbuildNumber=${GITHUB_RUN_NUMBER} + + - uses: actions/cache@v4 + id: restore-build + with: + path: | + target + tarjonta-api/target + tarjonta-app/target + tarjonta-app-angular/target + tarjonta-service/target + tarjonta-shared/target + key: ${{ github.sha }} + + deploy-container: + needs: test-and-build + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - uses: actions/cache@v4 + id: restore-build + with: + path: | + target + tarjonta-api/target + tarjonta-app/target + tarjonta-app-angular/target + tarjonta-service/target + tarjonta-shared/target + key: ${{ github.sha }} + + - name: Build and deploy Docker container + shell: bash + env: + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + run: | + git clone https://github.com/Opetushallitus/ci-tools.git + source ci-tools/common/setup-tools.sh + export ARTIFACT_NAME="tarjonta" + export TZ=Europe/Helsinki + + mv tarjonta-service/target/tarjonta-service.war $DOCKER_BUILD_DIR/artifact/tarjonta-service.war + mv tarjonta-app/target/tarjonta-app-*.war $DOCKER_BUILD_DIR/artifact/tarjonta-app.war + cp -vr src/main/resources/oph-configuration $DOCKER_BUILD_DIR/config/ + + export BASE_IMAGE="baseimage-war-openjdk8:master" + ./ci-tools/common/pull-image.sh + ./ci-tools/build/build-war.sh $ARTIFACT_NAME + ./ci-tools/github-build/upload-image.sh $ARTIFACT_NAME + + deploy-jar-library: + needs: test-and-build + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - uses: actions/cache@v4 + id: restore-build + with: + path: | + target + tarjonta-api/target + tarjonta-app/target + tarjonta-app-angular/target + tarjonta-service/target + tarjonta-shared/target + key: ${{ github.sha }} + + - name: Set up JDK 8 + uses: actions/setup-java@v4 + with: + java-version: '8' + distribution: 'corretto' + + - name: Deploy jar library + if: github.ref == 'refs/heads/master' + shell: bash + env: + ARTIFACTORY_USERNAME: ${{ secrets.ARTIFACTORY_USERNAME }} + ARTIFACTORY_PASSWORD: ${{ secrets.ARTIFACTORY_PASSWORD }} + run: | + git clone https://github.com/Opetushallitus/ci-tools.git + source ci-tools/common/setup-tools.sh + mvn deploy -pl tarjonta-api,tarjonta-shared -DskipTests --settings ci-tools/common/maven-settings.xml From bd461a09e8ff1deb4a6fbeab375003dfe2d0929e Mon Sep 17 00:00:00 2001 From: Mikko Siukola Date: Wed, 18 Sep 2024 10:27:19 +0300 Subject: [PATCH 2/4] OY-4937 Add https repository --- pom.xml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 772af3fda..c211a6760 100644 --- a/pom.xml +++ b/pom.xml @@ -216,7 +216,11 @@ true - + + Maven-restlet-snapshots + Maven-restlet-snapshots + https://maven.restlet.talend.com/ + From 11df6f1fe1c9ae0a8be1325b24c0a8c58296ce14 Mon Sep 17 00:00:00 2001 From: Mikko Siukola Date: Wed, 18 Sep 2024 10:59:27 +0300 Subject: [PATCH 3/4] OY-4937 Setup node --- .github/workflows/build.yml | 12 ++++++++++-- tarjonta-app-angular/pom.xml | 2 +- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ab8b054f3..30169c549 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -27,6 +27,10 @@ jobs: java-version: '8' distribution: 'corretto' + - uses: actions/setup-node@v4 + with: + node-version: 8.12.0 + - uses: szenius/set-timezone@v1.0 with: timezoneLinux: "Europe/Helsinki" @@ -34,8 +38,12 @@ jobs: - name: Build with Maven env: GITHUB_TOKEN: ${{ github.token }} - run: mvn clean package -B -Dbranch=${GITHUB_REF_NAME} -Drevision=${GITHUB_SHA} -DbuildNumber=${GITHUB_RUN_NUMBER} - + run: | + node -v + npm -v + mvn clean package -B -Dbranch=${GITHUB_REF_NAME} -Drevision=${GITHUB_SHA} -DbuildNumber=${GITHUB_RUN_NUMBER} + node -v + npm -v - uses: actions/cache@v4 id: restore-build with: diff --git a/tarjonta-app-angular/pom.xml b/tarjonta-app-angular/pom.xml index 2ca5280bc..f3c3252a0 100644 --- a/tarjonta-app-angular/pom.xml +++ b/tarjonta-app-angular/pom.xml @@ -29,7 +29,7 @@ v8.12.0 - 3.10.7 + 6.14.17 From a6eef8ddce08c59abe1004a5dfbea51ed4b80cf0 Mon Sep 17 00:00:00 2001 From: Mikko Siukola Date: Wed, 18 Sep 2024 15:06:02 +0300 Subject: [PATCH 4/4] OY-4937 Use correct build script --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 30169c549..f13d6c11d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -92,7 +92,7 @@ jobs: export BASE_IMAGE="baseimage-war-openjdk8:master" ./ci-tools/common/pull-image.sh - ./ci-tools/build/build-war.sh $ARTIFACT_NAME + ./ci-tools/github-build/build-war.sh $ARTIFACT_NAME ./ci-tools/github-build/upload-image.sh $ARTIFACT_NAME deploy-jar-library: