add common pipeline for main and 2.1.x branches (#1256)
This commit is contained in:
11
.github/workflows/composites/build-controllers-project/action.yaml
vendored
Executable file
11
.github/workflows/composites/build-controllers-project/action.yaml
vendored
Executable file
@@ -0,0 +1,11 @@
|
||||
name: build controllers project
|
||||
description: build controllers project
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: build controllers project
|
||||
shell: bash
|
||||
run: |
|
||||
cd spring-cloud-kubernetes-controllers
|
||||
.././mvnw -T 1C -U clean install
|
||||
cd ..
|
||||
12
.github/workflows/composites/build-integration-tests-project/action.yaml
vendored
Executable file
12
.github/workflows/composites/build-integration-tests-project/action.yaml
vendored
Executable file
@@ -0,0 +1,12 @@
|
||||
name: build integration tests project without tests
|
||||
description: build integration tests project without tests
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: build integration tests project without tests
|
||||
shell: bash
|
||||
run: |
|
||||
cd spring-cloud-kubernetes-integration-tests
|
||||
# build the images, but dont run the tests
|
||||
.././mvnw -T 1C clean install -DskipTests
|
||||
cd ..
|
||||
11
.github/workflows/composites/cache/action.yaml
vendored
Executable file
11
.github/workflows/composites/cache/action.yaml
vendored
Executable file
@@ -0,0 +1,11 @@
|
||||
name: cache
|
||||
description: cache
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: ~/.m2/repository
|
||||
key: ${{ runner.os }}-cache-${{ env.BRANCH_NAME }}-${{ hashFiles('**/pom.xml') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-cache-${{ env.BRANCH_NAME }}-${{ hashFiles('**/pom.xml') }}
|
||||
15
.github/workflows/composites/download-docker-images/action.yaml
vendored
Executable file
15
.github/workflows/composites/download-docker-images/action.yaml
vendored
Executable file
@@ -0,0 +1,15 @@
|
||||
# we are not going to use upload/download actions, since it is slower than cache usage
|
||||
# as key to the cache we are going to use DOCKER_IMAGES_KEY, which is the same as GITHUB_RUN_ID
|
||||
|
||||
name: download docker images
|
||||
description: download docker images
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: /tmp/docker/images
|
||||
key: docker-images-cache-${{ env.DOCKER_IMAGES_KEY }}
|
||||
restore-keys: docker-images-cache-${{ env.DOCKER_IMAGES_KEY }}
|
||||
|
||||
|
||||
10
.github/workflows/composites/echo-saved-images/action.yaml
vendored
Executable file
10
.github/workflows/composites/echo-saved-images/action.yaml
vendored
Executable file
@@ -0,0 +1,10 @@
|
||||
name: echo saved images
|
||||
description: echo saved images
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: echo saved images
|
||||
shell: bash
|
||||
run: |
|
||||
VIEW=$(ls -l /tmp/docker/images)
|
||||
echo "${VIEW}"
|
||||
24
.github/workflows/composites/env-variables/action.yaml
vendored
Executable file
24
.github/workflows/composites/env-variables/action.yaml
vendored
Executable file
@@ -0,0 +1,24 @@
|
||||
name: sets environment variables
|
||||
description: sets environment variables
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: set env variables
|
||||
shell: bash
|
||||
run: |
|
||||
|
||||
baseRef=$GITHUB_BASE_REF
|
||||
if [[ ! -z $baseRef ]]; then
|
||||
echo "This is a PR to branch : $baseRef"
|
||||
echo "BASE_BRANCH=$(echo $baseRef)" >> $GITHUB_ENV
|
||||
else
|
||||
raw=${{ github.ref }}
|
||||
echo "${raw}"
|
||||
branch=${raw##*/}
|
||||
echo "This is a merge to branch : ${branch}"
|
||||
echo "BASE_BRANCH=$(echo ${branch})" >> $GITHUB_ENV
|
||||
fi
|
||||
|
||||
echo "BRANCH_NAME=$(echo $GITHUB_HEAD_REF)" >> $GITHUB_ENV
|
||||
echo "BASE_BRANCH_NAME=$(echo $GITHUB_BASE_REF)" >> $GITHUB_ENV
|
||||
echo "DOCKER_IMAGES_KEY=$(echo $GITHUB_RUN_ID)" >> $GITHUB_ENV
|
||||
17
.github/workflows/composites/fabric8-istio-integration-test/action.yaml
vendored
Executable file
17
.github/workflows/composites/fabric8-istio-integration-test/action.yaml
vendored
Executable file
@@ -0,0 +1,17 @@
|
||||
name: run fabric8 istio integration test
|
||||
description: run fabric8 istio integration test
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: run fabric8 istio integration test
|
||||
shell: bash
|
||||
run: |
|
||||
|
||||
cd spring-cloud-kubernetes-test-support
|
||||
.././mvnw clean install
|
||||
cd ..
|
||||
|
||||
docker load -i /tmp/docker/images/spring-cloud-kubernetes-fabric8-istio-it.tar
|
||||
cd spring-cloud-kubernetes-integration-tests/spring-cloud-kubernetes-fabric8-istio-it/
|
||||
../.././mvnw clean install -Dskip.build.image=true
|
||||
cd ../..
|
||||
14
.github/workflows/composites/fabric8-istio/action.yaml
vendored
Executable file
14
.github/workflows/composites/fabric8-istio/action.yaml
vendored
Executable file
@@ -0,0 +1,14 @@
|
||||
# build a lightweight project so that dependencies for the
|
||||
# maven-surefire-plugin are downloaded and thus cached also
|
||||
|
||||
name: build fabric8 istio project
|
||||
description: build fabric8 istio projects
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: build fabric8 istio project
|
||||
shell: bash
|
||||
run: |
|
||||
cd spring-cloud-kubernetes-fabric8-istio
|
||||
.././mvnw -s ../.settings.xml clean install -U
|
||||
cd ..
|
||||
27
.github/workflows/composites/load-docker-images/action.yaml
vendored
Executable file
27
.github/workflows/composites/load-docker-images/action.yaml
vendored
Executable file
@@ -0,0 +1,27 @@
|
||||
name: install docker images
|
||||
description: load docker images from tar
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: load docker images
|
||||
shell: bash
|
||||
run: |
|
||||
|
||||
# get the name of the images to load from children of spring-cloud-kubernetes-controllers
|
||||
cd spring-cloud-kubernetes-controllers
|
||||
while read controller_image; do
|
||||
docker load -i /tmp/docker/images/${controller_image}.tar
|
||||
done < <(mvn -Dexec.executable='echo' -Dexec.args='${project.artifactId}' exec:exec -q | grep -v 'spring-cloud-kubernetes-controllers')
|
||||
cd ..
|
||||
|
||||
# get the name of the images to load from children of spring-cloud-kubernetes-integration-tests
|
||||
cd spring-cloud-kubernetes-integration-tests
|
||||
while read integration_test_image; do
|
||||
docker load -i /tmp/docker/images/${integration_test_image}.tar
|
||||
done < <(mvn -Dexec.executable='echo' -Dexec.args='${project.artifactId}' exec:exec -q \
|
||||
| grep -v 'spring-cloud-kubernetes-integration-tests' \
|
||||
| grep -v 'spring-cloud-kubernetes-client-configmap-event-reload-multiple-apps' \
|
||||
| grep -v 'spring-cloud-kubernetes-client-configuration-watcher-configmap-test-app' \
|
||||
| grep -v 'spring-cloud-kubernetes-client-secrets-event-reload-multiple-apps' \
|
||||
| grep -v 'spring-cloud-kubernetes-client-configuration-watcher-secrets-test-app' )
|
||||
cd ..
|
||||
15
.github/workflows/composites/save-controller-images/action.yaml
vendored
Executable file
15
.github/workflows/composites/save-controller-images/action.yaml
vendored
Executable file
@@ -0,0 +1,15 @@
|
||||
name: save controller docker images
|
||||
description: save controller docker images
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: save controller docker images
|
||||
shell: bash
|
||||
run: |
|
||||
mkdir -p /tmp/docker/images
|
||||
TAG=$(./mvnw help:evaluate -Dexpression=project.version -q -DforceStdout)
|
||||
cd spring-cloud-kubernetes-controllers
|
||||
while read controller_image; do
|
||||
docker save -o /tmp/docker/images/${controller_image}.tar docker.io/springcloud/${controller_image}:$TAG
|
||||
done < <(mvn -Dexec.executable='echo' -Dexec.args='${project.artifactId}' exec:exec -q | grep -v 'spring-cloud-kubernetes-controllers')
|
||||
cd ..
|
||||
20
.github/workflows/composites/save-integration-tests-images/action.yaml
vendored
Executable file
20
.github/workflows/composites/save-integration-tests-images/action.yaml
vendored
Executable file
@@ -0,0 +1,20 @@
|
||||
name: save integration tests docker images
|
||||
description: save integration tests docker images
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: save integration tests docker images
|
||||
shell: bash
|
||||
run: |
|
||||
mkdir -p /tmp/docker/images
|
||||
TAG=$(./mvnw help:evaluate -Dexpression=project.version -q -DforceStdout)
|
||||
cd spring-cloud-kubernetes-integration-tests
|
||||
while read integ_test; do
|
||||
docker save -o /tmp/docker/images/${integ_test}.tar docker.io/springcloud/${integ_test}:$TAG
|
||||
done < <(mvn -Dexec.executable='echo' -Dexec.args='${project.artifactId}' exec:exec -q \
|
||||
| grep -v 'spring-cloud-kubernetes-integration-tests' \
|
||||
| grep -v 'spring-cloud-kubernetes-client-configmap-event-reload-multiple-apps' \
|
||||
| grep -v 'spring-cloud-kubernetes-client-configuration-watcher-configmap-test-app' \
|
||||
| grep -v 'spring-cloud-kubernetes-client-secrets-event-reload-multiple-apps' \
|
||||
| grep -v 'spring-cloud-kubernetes-client-configuration-watcher-secrets-test-app' )
|
||||
cd ..
|
||||
9
.github/workflows/composites/setup-jdk1.8/action.yaml
vendored
Executable file
9
.github/workflows/composites/setup-jdk1.8/action.yaml
vendored
Executable file
@@ -0,0 +1,9 @@
|
||||
name: setup project with jdk-8
|
||||
description: setup project with jdk-8
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
java-version: '8'
|
||||
9
.github/workflows/composites/setup-jdk17/action.yaml
vendored
Executable file
9
.github/workflows/composites/setup-jdk17/action.yaml
vendored
Executable file
@@ -0,0 +1,9 @@
|
||||
name: setup project with jdk-17
|
||||
description: setup project with jdk-17
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
java-version: '17'
|
||||
15
.github/workflows/composites/upload-docker-images/action.yaml
vendored
Executable file
15
.github/workflows/composites/upload-docker-images/action.yaml
vendored
Executable file
@@ -0,0 +1,15 @@
|
||||
# we are not going to use upload/download actions, since it is slower than cache usage
|
||||
# as key to the cache we are going to use DOCKER_IMAGES_KEY, which is the same as GITHUB_RUN_ID
|
||||
|
||||
name: upload docker images
|
||||
description: upload docker images
|
||||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- uses: actions/cache@v2
|
||||
with:
|
||||
path: /tmp/docker/images
|
||||
key: docker-images-cache-${{ env.DOCKER_IMAGES_KEY }}
|
||||
restore-keys: docker-images-cache-${{ env.DOCKER_IMAGES_KEY }}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user