milvus/.github/actions/cache/action.yaml

49 lines
1.7 KiB
YAML
Raw Normal View History

name: 'Milvus Cache'
description: ''
inputs:
os:
description: 'OS name'
required: true
default: 'ubuntu20.04'
kind:
description: 'Cache kind'
required: false
default: 'all'
runs:
using: "composite"
steps:
- name: Generate CCache Hash
env:
CORE_HASH: ${{ hashFiles( 'internal/core/**/*.cpp', 'internal/core/**/*.cc', 'internal/core/**/*.c', 'internal/core/**/*.h', 'internal/core/**/*.hpp', 'internal/core/**/CMakeLists.txt') }}
run: |
echo "corehash=${CORE_HASH}" >> $GITHUB_ENV
echo "Set CCache hash to ${CORE_HASH}"
shell: bash
- name: Cache CCache Volumes
if: ${{ inputs.kind == 'all' || inputs.kind == 'cpp' }}
uses: actions/cache@v3
with:
path: .docker/amd64-${{ inputs.os }}-ccache
key: ${{ inputs.os }}-ccache-${{ env.corehash }}
restore-keys: ${{ inputs.os }}-ccache-
- name: Cache Conan Packages
if: ${{ inputs.kind == 'all' || inputs.kind == 'cpp' }}
uses: actions/cache@v3
with:
path: .docker/amd64-${{ inputs.os }}-conan
key: ${{ inputs.os }}-conan-${{ hashFiles('internal/core/conanfile.*') }}
restore-keys: ${{ inputs.os }}-conan-
- name: Cache Third Party
if: ${{ inputs.kind == 'all' || inputs.kind == 'thirdparty' }}
uses: actions/cache@v3
with:
path: .docker/thirdparty
key: ${{ inputs.os }}-thirdparty-${{ hashFiles('internal/core/thirdparty/**') }}
restore-keys: ${{ inputs.os }}-thirdparty-
- name: Cache Go Mod Volumes
if: ${{ inputs.kind == 'all' || inputs.kind == 'go' }}
uses: actions/cache@v3
with:
path: .docker/amd64-${{ inputs.os }}-go-mod
key: ${{ inputs.os }}-go-mod-${{ hashFiles('go.sum, */go.sum') }}
restore-keys: ${{ inputs.os }}-go-mod-