Skip to content

Commit

Permalink
Merge pull request #303 from hagay3/feature/hagai/upgradeGithubActions
Browse files Browse the repository at this point in the history
Upgrade GitHub actions
  • Loading branch information
hagay3 authored Jun 23, 2023
2 parents efceb5d + 1a58e34 commit 12b61c1
Show file tree
Hide file tree
Showing 4 changed files with 47 additions and 73 deletions.
104 changes: 42 additions & 62 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,50 +25,40 @@ jobs:
matrix:
os: [ubuntu-latest]
scala: [2.12.13, 2.13.6, 3.2.0]
java: [temurin@11, temurin@17]
java: [temurin@8, temurin@17]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout current branch (full)
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Setup Java (temurin@11)
if: matrix.java == 'temurin@11'
uses: actions/setup-java@v2
- name: Setup Java (temurin@8)
if: matrix.java == 'temurin@8'
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: 11
java-version: 8
cache: sbt

- name: Setup Java (temurin@17)
if: matrix.java == 'temurin@17'
uses: actions/setup-java@v2
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: 17

- name: Cache sbt
uses: actions/cache@v2
with:
path: |
~/.sbt
~/.ivy2/cache
~/.coursier/cache/v1
~/.cache/coursier/v1
~/AppData/Local/Coursier/Cache/v1
~/Library/Caches/Coursier/v1
key: ${{ runner.os }}-sbt-cache-v2-${{ hashFiles('**/*.sbt') }}-${{ hashFiles('project/build.properties') }}
cache: sbt




- run: sbt ++${{ matrix.scala }} test It/compile
- run: sbt '++ ${{ matrix.scala }}' test It/compile

- name: Compress target directories
run: tar cf targets.tar target client/target examples/target project/target

- name: Upload target directories
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: target-${{ matrix.os }}-${{ matrix.scala }}-${{ matrix.java }}
path: targets.tar
Expand All @@ -81,42 +71,32 @@ jobs:
matrix:
os: [ubuntu-latest]
scala: [2.13.6]
java: [temurin@11]
java: [temurin@8]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout current branch (full)
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Setup Java (temurin@11)
if: matrix.java == 'temurin@11'
uses: actions/setup-java@v2
- name: Setup Java (temurin@8)
if: matrix.java == 'temurin@8'
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: 11
java-version: 8
cache: sbt

- name: Setup Java (temurin@17)
if: matrix.java == 'temurin@17'
uses: actions/setup-java@v2
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: 17

- name: Cache sbt
uses: actions/cache@v2
with:
path: |
~/.sbt
~/.ivy2/cache
~/.coursier/cache/v1
~/.cache/coursier/v1
~/AppData/Local/Coursier/Cache/v1
~/Library/Caches/Coursier/v1
key: ${{ runner.os }}-sbt-cache-v2-${{ hashFiles('**/*.sbt') }}-${{ hashFiles('project/build.properties') }}
cache: sbt

- name: Download target directories (2.12.13)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: target-${{ matrix.os }}-2.12.13-${{ matrix.java }}

Expand All @@ -126,7 +106,7 @@ jobs:
rm targets.tar
- name: Download target directories (2.13.6)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: target-${{ matrix.os }}-2.13.6-${{ matrix.java }}

Expand All @@ -136,7 +116,7 @@ jobs:
rm targets.tar
- name: Download target directories (3.2.0)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: target-${{ matrix.os }}-3.2.0-${{ matrix.java }}

Expand All @@ -150,19 +130,19 @@ jobs:
PGP_SECRET: ${{ secrets.PGP_SECRET }}
SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }}
SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }}
run: sbt ++${{ matrix.scala }} ci-release
run: sbt ci-release

integration-kubernetes-v1-19:
name: integration-kubernetes-v1-19
strategy:
matrix:
os: [ubuntu-latest]
scala: [2.13.6]
java: [temurin@11]
java: [temurin@8]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout current branch (fast)
uses: actions/checkout@v2
uses: actions/checkout@v3

- env:
SBT_OPTS: '-XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=2G -Xmx8G -Xms6G'
Expand All @@ -173,19 +153,19 @@ jobs:
github token: ${{ secrets.GITHUB_TOKEN }}
start args: '--extra-config=apiserver.disable-admission-plugins=ServiceAccount --extra-config=apiserver.enable-admission-plugins=NamespaceLifecycle'

- run: 'sbt ++${{ matrix.scala }} "it:testOnly "'
- run: 'sbt "it:testOnly "'

integration-kubernetes-v1-20:
name: integration-kubernetes-v1-20
strategy:
matrix:
os: [ubuntu-latest]
scala: [2.13.6]
java: [temurin@11]
java: [temurin@8]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout current branch (fast)
uses: actions/checkout@v2
uses: actions/checkout@v3

- env:
SBT_OPTS: '-XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=2G -Xmx8G -Xms6G'
Expand All @@ -196,19 +176,19 @@ jobs:
github token: ${{ secrets.GITHUB_TOKEN }}
start args: '--extra-config=apiserver.disable-admission-plugins=ServiceAccount --extra-config=apiserver.enable-admission-plugins=NamespaceLifecycle'

- run: 'sbt ++${{ matrix.scala }} "it:testOnly "'
- run: 'sbt "it:testOnly "'

integration-kubernetes-v1-21:
name: integration-kubernetes-v1-21
strategy:
matrix:
os: [ubuntu-latest]
scala: [2.13.6]
java: [temurin@11]
java: [temurin@8]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout current branch (fast)
uses: actions/checkout@v2
uses: actions/checkout@v3

- env:
SBT_OPTS: '-XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=2G -Xmx8G -Xms6G'
Expand All @@ -219,19 +199,19 @@ jobs:
github token: ${{ secrets.GITHUB_TOKEN }}
start args: '--extra-config=apiserver.disable-admission-plugins=ServiceAccount --extra-config=apiserver.enable-admission-plugins=NamespaceLifecycle'

- run: 'sbt ++${{ matrix.scala }} "it:testOnly "'
- run: 'sbt "it:testOnly "'

integration-kubernetes-v1-22:
name: integration-kubernetes-v1-22
strategy:
matrix:
os: [ubuntu-latest]
scala: [2.13.6]
java: [temurin@11]
java: [temurin@8]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout current branch (fast)
uses: actions/checkout@v2
uses: actions/checkout@v3

- env:
SBT_OPTS: '-XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=2G -Xmx8G -Xms6G'
Expand All @@ -242,19 +222,19 @@ jobs:
github token: ${{ secrets.GITHUB_TOKEN }}
start args: '--extra-config=apiserver.disable-admission-plugins=ServiceAccount --extra-config=apiserver.enable-admission-plugins=NamespaceLifecycle'

- run: 'sbt ++${{ matrix.scala }} "it:testOnly * -- -l CustomResourceTag"'
- run: 'sbt "it:testOnly * -- -l CustomResourceTag"'

integration-kubernetes-v1-23:
name: integration-kubernetes-v1-23
strategy:
matrix:
os: [ubuntu-latest]
scala: [2.13.6]
java: [temurin@11]
java: [temurin@8]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout current branch (fast)
uses: actions/checkout@v2
uses: actions/checkout@v3

- env:
SBT_OPTS: '-XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=2G -Xmx8G -Xms6G'
Expand All @@ -265,19 +245,19 @@ jobs:
github token: ${{ secrets.GITHUB_TOKEN }}
start args: '--extra-config=apiserver.disable-admission-plugins=ServiceAccount --extra-config=apiserver.enable-admission-plugins=NamespaceLifecycle'

- run: 'sbt ++${{ matrix.scala }} "it:testOnly * -- -l CustomResourceTag"'
- run: 'sbt "it:testOnly * -- -l CustomResourceTag"'

integration-kubernetes-v1-24:
name: integration-kubernetes-v1-24
strategy:
matrix:
os: [ubuntu-latest]
scala: [2.13.6]
java: [temurin@11]
java: [temurin@8]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout current branch (fast)
uses: actions/checkout@v2
uses: actions/checkout@v3

- env:
SBT_OPTS: '-XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=2G -Xmx8G -Xms6G'
Expand All @@ -288,4 +268,4 @@ jobs:
github token: ${{ secrets.GITHUB_TOKEN }}
start args: '--extra-config=apiserver.disable-admission-plugins=ServiceAccount --extra-config=apiserver.enable-admission-plugins=NamespaceLifecycle'

- run: 'sbt ++${{ matrix.scala }} "it:testOnly * -- -l CustomResourceTag"'
- run: 'sbt "it:testOnly * -- -l CustomResourceTag"'
8 changes: 4 additions & 4 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -114,10 +114,10 @@ def workflowJobMinikube(jobName: String, k8sServerVersion: String, excludedTests
WorkflowStep.Use(
ref = UseRef.Public(owner = "manusa", repo = "actions-setup-minikube", ref = "v2.7.2"),
params = Map(
"minikubeversion" -> "v1.25.2",
"kubernetesversion" -> k8sServerVersion,
"githubtoken" -> "${{ secrets.GITHUB_TOKEN }}",
"startargs" -> "--extra-config=apiserver.disable-admission-plugins=ServiceAccount --extra-config=apiserver.enable-admission-plugins=NamespaceLifecycle"),
"minikube version" -> "v1.25.2",
"kubernetes version" -> k8sServerVersion,
"github token" -> "${{ secrets.GITHUB_TOKEN }}",
"start args" -> "--extra-config=apiserver.disable-admission-plugins=ServiceAccount --extra-config=apiserver.enable-admission-plugins=NamespaceLifecycle"),
env = Map("SBT_OPTS" -> "-XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=2G -Xmx8G -Xms6G")
),
WorkflowStep.Sbt(List(finalSbtCommand))
Expand Down
6 changes: 0 additions & 6 deletions infra/ci/fix-workflows.sh
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@
#!/bin/bash
# Until the following issue is been fixed, this bash file will fix the ci pipeline.
# https://github.com/djspiewak/sbt-github-actions/issues/108

sed -i '' -E 's/.*Check that workflows are up to date//' .github/workflows/ci.yml
sed -i '' -E 's/.*githubWorkflowCheck//' .github/workflows/ci.yml
sed -i '' -E 's/minikubeversion/minikube version/' .github/workflows/ci.yml
sed -i '' -E 's/kubernetesversion/kubernetes version/' .github/workflows/ci.yml
sed -i '' -E 's/githubtoken/github token/' .github/workflows/ci.yml
sed -i '' -E 's/startargs/start args/' .github/workflows/ci.yml
sed -i '' -E '1,/branches.*/s/branches.*//' .github/workflows/ci.yml
sed -i '' -E "s/''/\"/g" .github/workflows/ci.yml
2 changes: 1 addition & 1 deletion project/plugins.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@ addSbtPlugin("com.github.sbt" % "sbt-pgp" % "2.2.1")


addSbtPlugin("com.github.sbt" % "sbt-ci-release" % "1.5.9")
addSbtPlugin("com.codecommit" % "sbt-github-actions" % "0.14.2")
addSbtPlugin("com.github.sbt" % "sbt-github-actions" % "0.15.0")

addDependencyTreePlugin

0 comments on commit 12b61c1

Please sign in to comment.