Skip to content
This repository has been archived by the owner on Nov 4, 2024. It is now read-only.

Added PR and Main build workflows #251

Merged
merged 24 commits into from
Jul 25, 2024
Merged
Show file tree
Hide file tree
Changes from 20 commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 71 additions & 0 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
name: Main build

on:
push:
branches: [main]

env:
REGISTRY: ghcr.io
NAMESPACE: galasa-dev
IMAGE_TAG: main

jobs:
build-extensions:
name: build and Test Extensions
runs-on: ubuntu-latest

steps:
- name: Checkout Code
uses: actions/checkout@v4

- name: Setup JDK
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'semeru'

- name: Print githash
run: |
echo $GITHUB_SHA > ./extensions.githash

- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
with:
gradle-version: 6.9.2

- name: Test and Build Extensions using gradle
env:
GITHUB_ACTOR: ${{github.actor}}
GITHUB_TOKEN: ${{ github.token }}
jaydee029 marked this conversation as resolved.
Show resolved Hide resolved
run: |
gradle -x sign -b galasa-extensions-parent/build.gradle check publish --info \
jaydee029 marked this conversation as resolved.
Show resolved Hide resolved
-PsourceMaven=https://development.galasa.dev/gh/maven-repo/framework \
-PcentralMaven=https://repo.maven.apache.org/maven2/ \
-PtargetMaven=${{ github.workspace }}/repo -PjacocoEnabled=true -PisMainOrRelease=true


- name: Extract metadata for Extensions image
id: metadata
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: ${{ env.REGISTRY }}/${{ env.NAMESPACE }}/extensions-maven-artefacts

- name: Build Extensions image for development Maven registry
id: build
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/dockerfile
push: true
tags: ${{ steps.metadata.outputs.tags }}
labels: ${{ steps.metadata.outputs.labels }}
build-args: |
dockerRepository=harbor.galasa.dev
tag=${{ env.IMAGE_TAG }}

- name: Recycle application in ArgoCD
env:
ARGOCD_AUTH_TOKEN: ${{ secrets.ARGOCD_TOKEN }}
run: |
docker run --env ARGOCD_AUTH_TOKEN=${{ env.ARGOCD_AUTH_TOKEN }} --rm -v ${{ github.workspace }}:/var/workspace ghcr.io/galasa-dev/argocdcli:main app actions run gh-maven-repos restart --kind Deployment --resource-name extensions-gh --server argocd.galasa.dev

50 changes: 50 additions & 0 deletions .github/workflows/pr-build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: PR build

on:
pull_request:
branches: [main]

env:
NAMESPACE: galasa-dev

jobs:
build-extensions:
name: build,Test and Publish Extensions
runs-on: ubuntu-latest

steps:
- name: Checkout Code
uses: actions/checkout@v4

- name: Setup JDK
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'semeru'

- name: Print githash
run: |
echo $GITHUB_SHA > ./extensions.githash

- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
with:
gradle-version: 6.9.2

- name: Test and Build Extensions using gradle
run: |
gradle -b galasa-extensions-parent/build.gradle check publish \
-PsourceMaven=https://development.galasa.dev/gh/maven-repo/framework \
-PcentralMaven=https://repo.maven.apache.org/maven2/ \
-PtargetMaven=${{ github.workspace }}/repo

- name: Build extensions Image for testing
uses: docker/build-push-action@v5
with:
context: .
file: dockerfiles/dockerfile
load: true
tags: extensions:test
build-args: |
dockerRepository=harbor.galasa.dev
tag=main
6 changes: 6 additions & 0 deletions dockerfiles/dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
ARG dockerRepository
ARG tag
FROM ${dockerRepository}/galasadev/galasa-framework:${tag}

COPY repo/ /usr/local/apache2/htdocs/
COPY extensions.githash /usr/local/apache2/htdocs/extensions.githash
4 changes: 2 additions & 2 deletions galasa-extensions-parent/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -199,8 +199,8 @@ publishing {

if ("$targetMaven".startsWith('http')) {
credentials {
username System.getenv('MAVENUSERNAME')
password System.getenv('MAVENPASSWORD')
username System.getenv('GITHUB_ACTOR')
password System.getenv('GITHUB_TOKEN')
}
}
}
Expand Down