Skip to content

Commit

Permalink
test
Browse files Browse the repository at this point in the history
  • Loading branch information
PhilDigitalJustice committed Oct 17, 2023
1 parent ac0f4b2 commit fad516c
Show file tree
Hide file tree
Showing 4 changed files with 141 additions and 56 deletions.
75 changes: 75 additions & 0 deletions .github/workflows/pr-merge-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-gradle

name: CI caab-data-api

on:
pull_request:
branches: [ task/ccls-1880_amend_package_versions ]
types: [ closed ]

permissions:
contents: read
packages: write

jobs:
define-image-tag:
if: github.event.pull_request.merged == true
runs-on: ubuntu-latest
# map a step output to job output
outputs:
tag_name: ${{ steps.extract_tag_name.outputs.tag_name }}
steps:
- name: Extract short repo name
shell: bash
run: echo "repo_name=caab-ebs${GITHUB_REPOSITORY#*\/laa-ccms-data}" >> $GITHUB_OUTPUT
id: extract_repo_name
- name: derive tag name
shell: bash
run: echo "tag_name=${{ steps.extract_repo_name.outputs.repo_name }}-${GITHUB_SHA::8}" >> $GITHUB_OUTPUT
id: extract_tag_name


build-test-publish:
if: github.event.pull_request.merged == true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
# replace with main after
ref: task/ccls-1880_amend_package_versions
token: ${{ secrets.REPO_TOKEN }}
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Build with Gradle
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629
with:
arguments: build

- name: Test
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629
with:
arguments: jacocoTestCoverageVerification

- name: Integration Test
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629
with:
arguments: integrationTest

- name: Set to github user
run: |
git config --global user.email "[email protected]"
git config --global user.name "GitHub Actions Bot"
- name: Update version
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629
with:
arguments: release -Prelease.useAutomaticVersion=true

119 changes: 64 additions & 55 deletions .github/workflows/test.yml → .github/workflows/push-branch-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,44 +17,54 @@ permissions:
packages: write

jobs:
define-image-tag:
runs-on: ubuntu-latest
# map a step output to job output
outputs:
tag_name: ${{ steps.extract_tag_name.outputs.tag_name }}
steps:
- name: Extract short repo name
shell: bash
run: echo "repo_name=caab-ebs${GITHUB_REPOSITORY#*\/laa-ccms-data}" >> $GITHUB_OUTPUT
id: extract_repo_name
- name: derive tag name
shell: bash
run: echo "tag_name=${{ steps.extract_repo_name.outputs.repo_name }}-${GITHUB_SHA::8}" >> $GITHUB_OUTPUT
id: extract_tag_name
define-image-tag:
if: github.event.pull_request.merged == true
runs-on: ubuntu-latest
# map a step output to job output
outputs:
tag_name: ${{ steps.extract_tag_name.outputs.tag_name }}
steps:
- name: Extract short repo name
shell: bash
run: echo "repo_name=caab-ebs${GITHUB_REPOSITORY#*\/laa-ccms-data}" >> $GITHUB_OUTPUT
id: extract_repo_name
- name: derive tag name
shell: bash
run: echo "tag_name=${{ steps.extract_repo_name.outputs.repo_name }}-${GITHUB_SHA::8}" >> $GITHUB_OUTPUT
id: extract_tag_name

build-test-publish:
runs-on: ubuntu-latest
outputs:
app_version: ${{ steps.capture_version.outputs.app_version }}
steps:
- uses: actions/checkout@v3
with:
token: ${{ secrets.REPO_TOKEN }}
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'temurin'
- name: Build with Gradle
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629
with:
arguments: build

- name: Set to github user
run: |
git config --global user.email "[email protected]"
git config --global user.name "GitHub Actions Bot"
- name: Test
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629
with:
arguments: jacocoTestCoverageVerification

- name: Integration Test
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629
with:
arguments: integrationTest

- name: Update version
- name: Publish package
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629
with:
arguments: release -Prelease.useAutomaticVersion=true
arguments: publish
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Capture version
id: capture_version
Expand All @@ -68,17 +78,11 @@ jobs:
uses: actions/upload-artifact@v3
with:
name: data-api-jar
path: data-service/build/libs/data-service-${{ steps.capture-version.outputs.version }}.jar

- name: Publish package
uses: gradle/gradle-build-action@749f47bda3e44aa060e82d7b3ef7e40d953bd629
with:
arguments: publish
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
path: data-service/build/libs/data-service-${{ steps.capture-version.outputs.app_version }}.jar

ecr:
needs: [build-test-publish, define-image-tag]
if: github.event_name == 'pull_request' && github.event.pull_request.base.ref == 'main'
needs: [ build-test-publish, define-image-tag ]
runs-on: ubuntu-latest
permissions:
id-token: write # for requesting jwt
Expand Down Expand Up @@ -118,28 +122,33 @@ jobs:
with:
name: data-api-jar

# update-helm-chart:
# needs: [ecr, define-image-tag]
# runs-on: ubuntu-latest
# environment: development
# steps:
# - name: Checkout charts repo
# uses: actions/checkout@v3
# with:
# repository: ministryofjustice/laa-ccms-caab-helm-charts
# ref: development
# path: laa-ccms-caab-helm-charts
# token: ${{ secrets.REPO_TOKEN }}
# - name: update helm chart
# env:
# IMAGE_TAG: ${{ needs.define-image-tag.outputs.tag_name }}
# run: |
# echo "$IMAGE_TAG"
# cd laa-ccms-caab-helm-charts/laa-ccms-caab-service/charts/laa-ccms-caab-ebs-api/
# yq eval-all "( .appVersion = \"${{ env.IMAGE_TAG }}\" )" -i Chart.yaml
# git config --global user.email "[email protected]"
# git config --global user.name "GitHub Actions Bot"
# git add .
# git commit -m "update appVersion to ${{ env.IMAGE_TAG }}"
# git push origin
- name: delete artifact
uses: geekyeggo/delete-artifact@v2
with:
name: data-api-jar

update-helm-chart:
needs: [ ecr, define-image-tag ]
runs-on: ubuntu-latest
environment: development
steps:
- name: Checkout charts repo
uses: actions/checkout@v3
with:
repository: ministryofjustice/laa-ccms-caab-helm-charts
ref: development
path: laa-ccms-caab-helm-charts
token: ${{ secrets.REPO_TOKEN }}
- name: update helm chart
env:
IMAGE_TAG: ${{ needs.define-image-tag.outputs.tag_name }}
run: |
echo "$IMAGE_TAG"
cd laa-ccms-caab-helm-charts/laa-ccms-caab-service/charts/laa-ccms-caab-ebs-api/
yq eval-all "( .appVersion = \"${{ env.IMAGE_TAG }}\" )" -i Chart.yaml
git config --global user.email "[email protected]"
git config --global user.name "GitHub Actions Bot"
git add .
git commit -m "update appVersion to ${{ env.IMAGE_TAG }}"
git push origin
1 change: 1 addition & 0 deletions .github/workflows/push-branch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ on:
branches-ignore:
- main
- task/ccls-1880_amend_package_versions
- test

permissions:
contents: read
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
version=0.0.6-SNAPSHOT
version=0.0.7
group='uk.gov.laa.ccms'

0 comments on commit fad516c

Please sign in to comment.