-
Notifications
You must be signed in to change notification settings - Fork 746
Commit
* implement a core logic to cache dependnecies * integrate the cache logic to entry points * add a user doc about the dependency cache feature * reflect changes to the dist dir * add a prefix to the cache key https://github.com/actions/setup-java/pull/193/files#r669521434 * test: extract build.gradle to a file in __tests__ dir * run the restore e2e test on the specified OS * add an e2e test for maven * fix the dependency among workflows * stabilize the cache on the Windows in e2e test * add .gitignore files to __tests__/cache directories * try to run restore after the authentication * use the key in state to save caches in the post process * suggest users to run without daemon if fail to save Gradle cache on Windows * add missing description in the README.md * run clean-up tasks in serial * Add validation for post step (#3) * work on fixing cache post step * fix tests * Update src/cleanup-java.ts Co-authored-by: Konrad Pabjan <[email protected]> * Update src/cache.ts Co-authored-by: Konrad Pabjan <[email protected]> * style: put the name of input to the constants.ts * format: run `npm run build` to reflect changes to the dist dir * chore: update licensed files by `licensed cache` it still has three errors as follows: >* setup-java.npm.sax > filename: /Users/kengo/GitHub/setup-java/.licenses/npm/sax.dep.yml > - license needs review: other > >* setup-java.npm.tslib-1.14.1 > filename: /Users/kengo/GitHub/setup-java/.licenses/npm/tslib-1.14.1.dep.yml > - license needs review: 0bsd > >* setup-java.npm.tslib-2.3.0 > filename: /Users/kengo/GitHub/setup-java/.licenses/npm/tslib-2.3.0.dep.yml > - license needs review: 0bsd * fix: rerun ncc on macOS with node v12 * build: follow the suggestion at PR page #193 (comment) * fix: throw error in case of no package manager file found Co-authored-by: Dmitry Shibanov <[email protected]> Co-authored-by: Konrad Pabjan <[email protected]>
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,113 @@ | ||
name: Validate cache | ||
on: | ||
push: | ||
branches: | ||
- main | ||
- releases/* | ||
paths-ignore: | ||
- '**.md' | ||
pull_request: | ||
paths-ignore: | ||
- '**.md' | ||
|
||
defaults: | ||
run: | ||
shell: bash | ||
|
||
jobs: | ||
gradle-save: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [macos-latest, windows-latest, ubuntu-latest] | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v2 | ||
- name: Run setup-java with the cache for gradle | ||
uses: ./ | ||
id: setup-java | ||
with: | ||
distribution: 'adopt' | ||
java-version: '11' | ||
cache: gradle | ||
- name: Create files to cache | ||
# Need to avoid using Gradle daemon to stabilize the save process on Windows | ||
# https://github.com/actions/cache/issues/454#issuecomment-840493935 | ||
run: | | ||
gradle downloadDependencies --no-daemon -p __tests__/cache/gradle | ||
if [ ! -d ~/.gradle/caches ]; then | ||
echo "::error::The ~/.gradle/caches directory does not exist unexpectedly" | ||
exit 1 | ||
fi | ||
gradle-restore: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [macos-latest, windows-latest, ubuntu-latest] | ||
needs: gradle-save | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v2 | ||
- name: Run setup-java with the cache for gradle | ||
uses: ./ | ||
id: setup-java | ||
with: | ||
distribution: 'adopt' | ||
java-version: '11' | ||
cache: gradle | ||
- name: Confirm that ~/.gradle/caches directory has been made | ||
run: | | ||
if [ ! -d ~/.gradle/caches ]; then | ||
echo "::error::The ~/.gradle/caches directory does not exist unexpectedly" | ||
exit 1 | ||
fi | ||
ls ~/.gradle/caches/ | ||
maven-save: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [macos-latest, windows-latest, ubuntu-latest] | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v2 | ||
- name: Run setup-java with the cache for maven | ||
uses: ./ | ||
id: setup-java | ||
with: | ||
distribution: 'adopt' | ||
java-version: '11' | ||
cache: maven | ||
- name: Create files to cache | ||
run: | | ||
mvn verify -f __tests__/cache/maven/pom.xml | ||
if [ ! -d ~/.m2/repository ]; then | ||
echo "::error::The ~/.m2/repository directory does not exist unexpectedly" | ||
exit 1 | ||
fi | ||
maven-restore: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [macos-latest, windows-latest, ubuntu-latest] | ||
needs: maven-save | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v2 | ||
- name: Run setup-java with the cache for maven | ||
uses: ./ | ||
id: setup-java | ||
with: | ||
distribution: 'adopt' | ||
java-version: '11' | ||
cache: maven | ||
- name: Confirm that ~/.m2/repository directory has been made | ||
run: | | ||
if [ ! -d ~/.m2/repository ]; then | ||
echo "::error::The ~/.m2/repository directory does not exist unexpectedly" | ||
exit 1 | ||
fi | ||
ls ~/.m2/repository |
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,6 +3,7 @@ sources: | |
|
||
allowed: | ||
- apache-2.0 | ||
- 0bsd | ||
- bsd-2-clause | ||
- bsd-3-clause | ||
- isc | ||
|
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.