Skip to content
This repository was archived by the owner on May 14, 2025. It is now read-only.

Commit 7f4bb7d

Browse files
committed
New ci workflows
1 parent 98bfcb7 commit 7f4bb7d

File tree

2 files changed

+112
-18
lines changed

2 files changed

+112
-18
lines changed

.github/workflows/ci-pr.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: CI PRs
2+
3+
on:
4+
pull_request:
5+
6+
jobs:
7+
build:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- uses: actions/checkout@v2
11+
# cache maven repo
12+
- uses: actions/cache@v1
13+
with:
14+
path: .m2
15+
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
16+
restore-keys: |
17+
${{ runner.os }}-m2-
18+
# jdk8
19+
- uses: actions/setup-java@v1
20+
with:
21+
java-version: 1.8
22+
# maven version
23+
- uses: jvalkeal/setup-maven@v1
24+
with:
25+
maven-version: 3.6.2
26+
# build
27+
- name: Build
28+
run: |
29+
mvn "-Dmaven.repo.local=.m2" -U -B clean package

.github/workflows/ci.yml

Lines changed: 83 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,100 @@
1-
name: Java CI - main
1+
name: CI
22

33
on:
4+
workflow_dispatch:
45
push:
5-
branches:
6-
- main
76
paths-ignore:
87
- '.github/**'
9-
pull_request:
10-
branches:
11-
- main
128

139
jobs:
1410
build:
15-
16-
runs-on: ${{ matrix.os }}
17-
strategy:
18-
matrix:
19-
os: [ubuntu-latest]
20-
11+
runs-on: ubuntu-latest
2112
steps:
2213
- uses: actions/checkout@v2
23-
- name: Cache maven repository
24-
uses: actions/cache@v1
14+
# cache maven repo
15+
- uses: actions/cache@v1
2516
with:
2617
path: .m2
2718
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
2819
restore-keys: |
2920
${{ runner.os }}-m2-
30-
- name: Set up JDK 1.8
31-
uses: actions/setup-java@v1
21+
# jdk8
22+
- uses: actions/setup-java@v1
3223
with:
3324
java-version: 1.8
34-
- name: Build with Maven
35-
run: mvn "-Dmaven.repo.local=.m2" -U -B install
25+
# maven version
26+
- uses: jvalkeal/setup-maven@v1
27+
with:
28+
maven-version: 3.6.2
29+
# jfrog cli
30+
- uses: jfrog/setup-jfrog-cli@v1
31+
with:
32+
version: 1.46.4
33+
env:
34+
JF_ARTIFACTORY_SPRING: ${{ secrets.JF_ARTIFACTORY_SPRING }}
35+
# setup frog cli
36+
- name: Configure JFrog Cli
37+
run: |
38+
jfrog rt mvnc \
39+
--server-id-resolve=repo.spring.io \
40+
--server-id-deploy=repo.spring.io \
41+
--repo-resolve-releases=libs-release \
42+
--repo-resolve-snapshots=libs-snapshot \
43+
--repo-deploy-releases=release \
44+
--repo-deploy-snapshots=snapshot
45+
echo JFROG_CLI_BUILD_NAME=spring-cloud-dataflow-main >> $GITHUB_ENV
46+
echo JFROG_CLI_BUILD_NUMBER=$GITHUB_RUN_NUMBER >> $GITHUB_ENV
47+
echo spring_cloud_dataflow_version=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout) >> $GITHUB_ENV
48+
# build and publish
49+
- name: Build and Publish
50+
run: |
51+
jfrog rt mvn "-Dmaven.repo.local=.m2" -U -B clean install
52+
jfrog rt build-publish
53+
54+
# build images to local repo to get pushed
55+
- name: Build Images
56+
env:
57+
TAG: ${{ env.spring_cloud_dataflow_version }}
58+
run: |
59+
pack build \
60+
--path spring-cloud-dataflow-server/target/spring-cloud-dataflow-server-$TAG.jar \
61+
--builder gcr.io/paketo-buildpacks/builder:0.1.99-base \
62+
--env BP_JVM_VERSION=8 springcloud/spring-cloud-dataflow-server:$TAG
63+
pack build \
64+
--path spring-cloud-dataflow-composed-task-runner/target/spring-cloud-dataflow-composed-task-runner-$TAG.jar \
65+
--builder gcr.io/paketo-buildpacks/builder:0.1.99-base \
66+
--env BP_JVM_VERSION=8 springcloud/spring-cloud-dataflow-composed-task-runner:$TAG
67+
68+
# docker hub login
69+
- uses: docker/login-action@v1
70+
with:
71+
username: ${{ secrets.DOCKERHUB_USERNAME }}
72+
password: ${{ secrets.DOCKERHUB_TOKEN }}
73+
74+
# push images
75+
- name: Push image
76+
env:
77+
TAG: ${{ env.spring_cloud_dataflow_version }}
78+
run: |
79+
docker push springcloud/spring-cloud-dataflow-server:$TAG
80+
docker push springcloud/spring-cloud-dataflow-composed-task-runner:$TAG
81+
82+
# build/publish support images
83+
- name: Publish Grafana Prometheus
84+
uses: docker/build-push-action@v2
85+
with:
86+
context: src/grafana/prometheus/docker/grafana
87+
push: true
88+
tags: springcloud/spring-cloud-dataflow-grafana-prometheus:${{ env.spring_cloud_dataflow_version }}
89+
- name: Publish Grafana InfluxDB
90+
uses: docker/build-push-action@v2
91+
with:
92+
context: src/grafana/influxdb/docker/grafana
93+
push: true
94+
tags: springcloud/spring-cloud-dataflow-grafana-influxdb:${{ env.spring_cloud_dataflow_version }}
95+
- name: Publish Prometheus Local
96+
uses: docker/build-push-action@v2
97+
with:
98+
context: src/grafana/prometheus/docker/prometheus-local
99+
push: true
100+
tags: springcloud/spring-cloud-dataflow-prometheus-local:${{ env.spring_cloud_dataflow_version }}

0 commit comments

Comments
 (0)