mirror of
https://git.mirrors.martin98.com/https://github.com/actions/toolkit
synced 2025-11-18 19:01:06 +08:00
* bsd + zstd fallback implementation * bsd + zstd fallback implementation * Fix tar operations * Add -v option for testing * Fix order of args for tar * Add GNUtar as default on windows * Fix test * Fix tar tests * Fix lint issues * Fix windows gnutar test case * Temporarily remove thhe condition that prevents zstd usage on windows unless with GNUtar * Address some comments and correct compression commands * Add windows bsdtar test * Fix windows test * Fix test * Separate args * Fix old tests * Add new tests * Fix tests * Fix lint test * Refactor code * Address review comments * Fix test * Fix tar test * Add await to async function calls * Fix test * Update for beta release * Fix audit issues * Add fallback to gzip compression if cache not found * Fix test * Add test * Address review comments * Revert Address review comments * Release 3.1.0-beta.2 cache package * Fix issues * Reconfigure catch block * Add debug logging for gzip fall back * Fix test * Add end to end test for cache using bsd on windows and address review comments * Fix test * Fix test * Fix tests * Add better comments * Update packages/cache/src/internal/cacheHttpClient.ts Co-authored-by: Bishal Prasad <bishal-pdmsft@github.com> * Address review comments * Update for new beta cache package release * Address bugbash issues * Fix tests * Release new actions/cache minor version Co-authored-by: Lovepreet Singh <pdotl@github.com> Co-authored-by: Bishal Prasad <bishal-pdmsft@github.com>
91 lines
3.0 KiB
YAML
91 lines
3.0 KiB
YAML
name: cache-windows-bsd-unit-tests
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
paths-ignore:
|
|
- '**.md'
|
|
pull_request:
|
|
paths-ignore:
|
|
- '**.md'
|
|
|
|
jobs:
|
|
build:
|
|
name: Build
|
|
|
|
runs-on: windows-latest
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- shell: bash
|
|
run: |
|
|
rm "C:\Program Files\Git\usr\bin\tar.exe"
|
|
|
|
- name: Set Node.js 12.x
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: 12.x
|
|
|
|
# In order to save & restore cache from a shell script, certain env variables need to be set that are only available in the
|
|
# node context. This runs a local action that gets and sets the necessary env variables that are needed
|
|
- name: Set env variables
|
|
uses: ./packages/cache/__tests__/__fixtures__/
|
|
|
|
# Need root node_modules because certain npm packages like jest are configured for the entire repository and it won't be possible
|
|
# without these to just compile the cache package
|
|
- name: Install root npm packages
|
|
run: npm ci
|
|
|
|
- name: Compile cache package
|
|
run: |
|
|
npm ci
|
|
npm run tsc
|
|
working-directory: packages/cache
|
|
|
|
- name: Generate files in working directory
|
|
shell: bash
|
|
run: packages/cache/__tests__/create-cache-files.sh ${{ runner.os }} test-cache
|
|
|
|
- name: Generate files outside working directory
|
|
shell: bash
|
|
run: packages/cache/__tests__/create-cache-files.sh ${{ runner.os }} ~/test-cache
|
|
|
|
# We're using node -e to call the functions directly available in the @actions/cache package
|
|
- name: Save cache using saveCache()
|
|
run: |
|
|
node -e "Promise.resolve(require('./packages/cache/lib/cache').saveCache(['test-cache','~/test-cache'],'test-${{ runner.os }}-${{ github.run_id }}'))"
|
|
|
|
- name: Delete cache folders before restoring
|
|
shell: bash
|
|
run: |
|
|
rm -rf test-cache
|
|
rm -rf ~/test-cache
|
|
|
|
- name: Restore cache using restoreCache() with http-client
|
|
run: |
|
|
node -e "Promise.resolve(require('./packages/cache/lib/cache').restoreCache(['test-cache','~/test-cache'],'test-${{ runner.os }}-${{ github.run_id }}',[],{useAzureSdk: false}))"
|
|
|
|
- name: Verify cache restored with http-client
|
|
shell: bash
|
|
run: |
|
|
packages/cache/__tests__/verify-cache-files.sh ${{ runner.os }} test-cache
|
|
packages/cache/__tests__/verify-cache-files.sh ${{ runner.os }} ~/test-cache
|
|
|
|
- name: Delete cache folders before restoring
|
|
shell: bash
|
|
run: |
|
|
rm -rf test-cache
|
|
rm -rf ~/test-cache
|
|
|
|
- name: Restore cache using restoreCache() with Azure SDK
|
|
run: |
|
|
node -e "Promise.resolve(require('./packages/cache/lib/cache').restoreCache(['test-cache','~/test-cache'],'test-${{ runner.os }}-${{ github.run_id }}'))"
|
|
|
|
- name: Verify cache restored with Azure SDK
|
|
shell: bash
|
|
run: |
|
|
packages/cache/__tests__/verify-cache-files.sh ${{ runner.os }} test-cache
|
|
packages/cache/__tests__/verify-cache-files.sh ${{ runner.os }} ~/test-cache
|