-
Notifications
You must be signed in to change notification settings - Fork 38
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Update CI and dependencies * Fixes and cleanups * More fixes * fmt * More fixes * Don't run mima for JS/Native with Scala 3 * Add `-release` flag and run JS/native tests only for JDK21 * Fix matrix
- Loading branch information
1 parent
fa33943
commit 48898d0
Showing
9 changed files
with
250 additions
and
122 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,9 @@ | ||
# This file was autogenerated using `zio-sbt-ci` plugin via `sbt generateGithubWorkflow` | ||
# This file was autogenerated using `zio-sbt-ci` plugin via `sbt ciGenerateGithubWorkflow` | ||
# task and should be included in the git repository. Please do not edit it manually. | ||
|
||
name: CI | ||
env: | ||
JDK_JAVA_OPTIONS: -XX:+PrintCommandLineFlags -Xmx6G -Xss4M -XX:+UseG1GC | ||
JVM_OPTS: -XX:+PrintCommandLineFlags -Xmx6G -Xss4M -XX:+UseG1GC | ||
NODE_OPTIONS: --max_old_space_size=6144 | ||
JDK_JAVA_OPTIONS: -XX:+PrintCommandLineFlags | ||
'on': | ||
workflow_dispatch: {} | ||
release: | ||
|
@@ -14,46 +12,63 @@ env: | |
push: | ||
branches: | ||
- series/2.x | ||
pull_request: {} | ||
pull_request: | ||
branches-ignore: | ||
- gh-pages | ||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.ref == format('refs/heads/{0}', github.event.repository.default_branch) && github.run_id || github.ref }} | ||
cancel-in-progress: true | ||
jobs: | ||
build: | ||
name: Build | ||
runs-on: ubuntu-latest | ||
continue-on-error: true | ||
steps: | ||
- name: Git Checkout | ||
uses: actions/checkout@v3.3.0 | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: '0' | ||
- name: Install libuv | ||
run: sudo apt-get update && sudo apt-get install -y libuv1-dev | ||
- name: Setup Scala | ||
uses: actions/setup-java@v3.10.0 | ||
uses: actions/setup-java@v4 | ||
with: | ||
distribution: temurin | ||
distribution: corretto | ||
java-version: '17' | ||
check-latest: true | ||
- name: Check if the site workflow is up to date | ||
run: free --si -tmws 10 & sbt -J-XX:+UseG1GC -J-Xmx4g -J-Xms2g -J-Xss16m checkGithubWorkflow | ||
- name: Cache Dependencies | ||
uses: coursier/cache-action@v6 | ||
- name: Check all code compiles | ||
run: free --si -tmws 10 & sbt +Test/compile | ||
- name: Check artifacts build process | ||
run: sbt -J-XX:+UseG1GC -J-Xmx4g -J-Xms2g -J-Xss16m +publishLocal | ||
run: sbt +publishLocal | ||
- name: Check binary compatibility | ||
run: sbt "+zioCacheJVM/mimaReportBinaryIssues; zioCacheJS/mimaReportBinaryIssues; zioCacheNative/mimaReportBinaryIssues" | ||
- name: Check website build process | ||
run: free --si -tmws 10 & sbt docs/clean; sbt -J-XX:+UseG1GC -J-Xmx4g -J-Xms2g -J-Xss16m docs/buildWebsite | ||
run: free --si -tmws 10 & sbt docs/clean; sbt docs/buildWebsite | ||
lint: | ||
name: Lint | ||
runs-on: ubuntu-latest | ||
continue-on-error: false | ||
steps: | ||
- name: Git Checkout | ||
uses: actions/checkout@v3.3.0 | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: '0' | ||
- name: Install libuv | ||
run: sudo apt-get update && sudo apt-get install -y libuv1-dev | ||
- name: Setup Scala | ||
uses: actions/setup-java@v3.10.0 | ||
uses: actions/setup-java@v4 | ||
with: | ||
distribution: temurin | ||
distribution: corretto | ||
java-version: '17' | ||
check-latest: true | ||
- name: Cache Dependencies | ||
uses: coursier/cache-action@v6 | ||
- name: Check if the site workflow is up to date | ||
run: free --si -tmws 10 & sbt ciCheckGithubWorkflow | ||
- name: Lint | ||
run: free --si -tmws 10 & sbt -J-XX:+UseG1GC -J-Xmx4g -J-Xms2g -J-Xss16m lint | ||
run: free --si -tmws 10 & sbt lint | ||
test: | ||
name: Test | ||
runs-on: ubuntu-latest | ||
|
@@ -62,31 +77,96 @@ jobs: | |
fail-fast: false | ||
matrix: | ||
java: | ||
- '8' | ||
- '11' | ||
- '17' | ||
- '21' | ||
scala-project: | ||
- ++2.11.12 zioCacheJVM | ||
- ++2.12.17 zioCacheJVM | ||
- ++2.13.10 zioCacheJVM | ||
- ++3.2.2 zioCacheJVM | ||
- ++2.12.17 zioCacheJS | ||
- ++2.13.10 zioCacheJS | ||
- ++2.12.17 zioCacheNative | ||
- ++2.13.10 zioCacheNative | ||
- ++2.12 zioCacheJVM | ||
- ++2.13 zioCacheJVM | ||
- ++3.3 zioCacheJVM | ||
- ++2.12 zioCacheJS | ||
- ++2.13 zioCacheJS | ||
- ++3.3 zioCacheJS | ||
- ++2.12 zioCacheNative | ||
- ++2.13 zioCacheNative | ||
- ++3.3 zioCacheNative | ||
steps: | ||
- name: Install libuv | ||
run: sudo apt-get update && sudo apt-get install -y libuv1-dev | ||
- name: Setup Scala | ||
uses: actions/setup-java@v3.10.0 | ||
uses: actions/setup-java@v4 | ||
with: | ||
distribution: temurin | ||
distribution: corretto | ||
java-version: ${{ matrix.java }} | ||
check-latest: true | ||
- name: Cache Dependencies | ||
uses: coursier/cache-action@v6 | ||
- name: Git Checkout | ||
uses: actions/checkout@v3.3.0 | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: '0' | ||
- name: Test | ||
run: free --si -tmws 10 & sbt -J-XX:+UseG1GC -J-Xmx4g -J-Xms2g -J-Xss16m ${{ matrix.scala-project }}/test | ||
run: free --si -tmws 10 & sbt ${{ matrix.scala-project }}/test | ||
update-readme: | ||
name: Update README | ||
runs-on: ubuntu-latest | ||
continue-on-error: false | ||
if: ${{ github.event_name == 'push' }} | ||
steps: | ||
- name: Git Checkout | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: '0' | ||
- name: Install libuv | ||
run: sudo apt-get update && sudo apt-get install -y libuv1-dev | ||
- name: Setup Scala | ||
uses: actions/setup-java@v4 | ||
with: | ||
distribution: corretto | ||
java-version: '17' | ||
check-latest: true | ||
- name: Cache Dependencies | ||
uses: coursier/cache-action@v6 | ||
- name: Generate Readme | ||
run: free --si -tmws 10 & sbt docs/generateReadme | ||
- name: Commit Changes | ||
run: | | ||
git config --local user.email "zio-assistant[bot]@users.noreply.github.com" | ||
git config --local user.name "ZIO Assistant" | ||
git add README.md | ||
git commit -m "Update README.md" || echo "No changes to commit" | ||
- name: Generate Token | ||
id: generate-token | ||
uses: zio/[email protected] | ||
with: | ||
app_id: ${{ secrets.APP_ID }} | ||
app_private_key: ${{ secrets.APP_PRIVATE_KEY }} | ||
- name: Create Pull Request | ||
id: cpr | ||
uses: peter-evans/create-pull-request@v6 | ||
with: | ||
body: |- | ||
Autogenerated changes after running the `sbt docs/generateReadme` command of the [zio-sbt-website](https://zio.dev/zio-sbt) plugin. | ||
I will automatically update the README.md file whenever there is new change for README.md, e.g. | ||
- After each release, I will update the version in the installation section. | ||
- After any changes to the "docs/index.md" file, I will update the README.md file accordingly. | ||
branch: zio-sbt-website/update-readme | ||
commit-message: Update README.md | ||
token: ${{ steps.generate-token.outputs.token }} | ||
delete-branch: true | ||
title: Update README.md | ||
- name: Approve PR | ||
if: ${{ steps.cpr.outputs.pull-request-number }} | ||
run: gh pr review "$PR_URL" --approve | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
PR_URL: ${{ steps.cpr.outputs.pull-request-url }} | ||
- name: Enable Auto-Merge | ||
if: ${{ steps.cpr.outputs.pull-request-number }} | ||
run: gh pr merge --auto --squash "$PR_URL" || gh pr merge --squash "$PR_URL" | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
PR_URL: ${{ steps.cpr.outputs.pull-request-url }} | ||
ci: | ||
name: ci | ||
runs-on: ubuntu-latest | ||
|
@@ -103,92 +183,86 @@ jobs: | |
runs-on: ubuntu-latest | ||
continue-on-error: false | ||
needs: | ||
- build | ||
- lint | ||
- test | ||
- ci | ||
if: ${{ github.event_name != 'pull_request' }} | ||
steps: | ||
- name: Git Checkout | ||
uses: actions/checkout@v3.3.0 | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: '0' | ||
- name: Install libuv | ||
run: sudo apt-get update && sudo apt-get install -y libuv1-dev | ||
- name: Setup Scala | ||
uses: actions/setup-java@v3.10.0 | ||
uses: actions/setup-java@v4 | ||
with: | ||
distribution: temurin | ||
distribution: corretto | ||
java-version: '17' | ||
check-latest: true | ||
- name: Cache Dependencies | ||
uses: coursier/cache-action@v6 | ||
- name: Release | ||
run: free --si -tmws 10 & sbt -J-XX:+UseG1GC -J-Xmx4g -J-Xms2g -J-Xss16m ci-release | ||
run: free --si -tmws 10 & sbt ci-release | ||
env: | ||
PGP_PASSPHRASE: ${{ secrets.PGP_PASSPHRASE }} | ||
PGP_SECRET: ${{ secrets.PGP_SECRET }} | ||
SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }} | ||
SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }} | ||
publish-docs: | ||
name: Publish Docs | ||
release-docs: | ||
name: Release Docs | ||
runs-on: ubuntu-latest | ||
continue-on-error: false | ||
needs: | ||
- release | ||
if: ${{ ((github.event_name == 'release') && (github.event.action == 'published')) || (github.event_name == 'workflow_dispatch') }} | ||
steps: | ||
- name: Git Checkout | ||
uses: actions/checkout@v3.3.0 | ||
uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: '0' | ||
- name: Install libuv | ||
run: sudo apt-get update && sudo apt-get install -y libuv1-dev | ||
- name: Setup Scala | ||
uses: actions/setup-java@v3.10.0 | ||
uses: actions/setup-java@v4 | ||
with: | ||
distribution: temurin | ||
distribution: corretto | ||
java-version: '17' | ||
check-latest: true | ||
- name: Cache Dependencies | ||
uses: coursier/cache-action@v6 | ||
- name: Setup NodeJs | ||
uses: actions/setup-node@v3 | ||
uses: actions/setup-node@v4 | ||
with: | ||
node-version: 16.x | ||
registry-url: https://registry.npmjs.org | ||
- name: Publish Docs to NPM Registry | ||
run: free --si -tmws 10 & sbt -J-XX:+UseG1GC -J-Xmx4g -J-Xms2g -J-Xss16m docs/publishToNpm | ||
run: free --si -tmws 10 & sbt docs/publishToNpm | ||
env: | ||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} | ||
generate-readme: | ||
name: Generate README | ||
notify-docs-release: | ||
name: Notify Docs Release | ||
runs-on: ubuntu-latest | ||
continue-on-error: false | ||
needs: | ||
- release | ||
if: ${{ (github.event_name == 'push') || ((github.event_name == 'release') && (github.event.action == 'published')) }} | ||
- release-docs | ||
if: ${{ (github.event_name == 'release') && (github.event.action == 'published') }} | ||
steps: | ||
- name: Git Checkout | ||
uses: actions/checkout@v3.3.0 | ||
uses: actions/checkout@v4 | ||
with: | ||
ref: ${{ github.head_ref }} | ||
fetch-depth: '0' | ||
- name: Setup Scala | ||
uses: actions/[email protected] | ||
with: | ||
distribution: temurin | ||
java-version: '17' | ||
check-latest: true | ||
- name: Generate Readme | ||
run: free --si -tmws 10 & sbt -J-XX:+UseG1GC -J-Xmx4g -J-Xms2g -J-Xss16m docs/generateReadme | ||
- name: Commit Changes | ||
- name: notify the main repo about the new release of docs package | ||
run: | | ||
git config --local user.email "github-actions[bot]@users.noreply.github.com" | ||
git config --local user.name "github-actions[bot]" | ||
git add README.md | ||
git commit -m "Update README.md" || echo "No changes to commit" | ||
- name: Create Pull Request | ||
uses: peter-evans/[email protected] | ||
with: | ||
body: |- | ||
Autogenerated changes after running the `sbt docs/generateReadme` command of the [zio-sbt-website](https://zio.dev/zio-sbt) plugin. | ||
I will automatically update the README.md file whenever there is new change for README.md, e.g. | ||
- After each release, I will update the version in the installation section. | ||
- After any changes to the "docs/index.md" file, I will update the README.md file accordingly. | ||
branch: zio-sbt-website/update-readme | ||
commit-message: Update README.md | ||
delete-branch: true | ||
title: Update README.md | ||
PACKAGE_NAME=$(cat docs/package.json | grep '"name"' | awk -F'"' '{print $4}') | ||
PACKAGE_VERSION=$(npm view $PACKAGE_NAME version) | ||
curl -L \ | ||
-X POST \ | ||
-H "Accept: application/vnd.github+json" \ | ||
-H "Authorization: token ${{ secrets.PAT_TOKEN }}"\ | ||
https://api.github.com/repos/zio/zio/dispatches \ | ||
-d '{ | ||
"event_type":"update-docs", | ||
"client_payload":{ | ||
"package_name":"'"${PACKAGE_NAME}"'", | ||
"package_version": "'"${PACKAGE_VERSION}"'" | ||
} | ||
}' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
-J-Xms2G | ||
-J-Xmx4G | ||
-J-Xss16m | ||
-J-XX:+UseG1GC |
Oops, something went wrong.