blob: 62de2837af7d1059568aa315e6c8b9736d321e96 [file]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: Setup ccache
description: Install, configure and cache ccache for CI builds
inputs:
cache-key-prefix:
description: Prefix for the cache key (e.g., ccache-gcc-test)
required: true
runs:
using: composite
steps:
- name: Install ccache
shell: bash
run: sudo apt-get update && sudo apt-get install -y ccache
- name: Restore ccache
uses: actions/cache@v4
with:
path: ~/.ccache
key: ${{ inputs.cache-key-prefix }}-${{ runner.os }}-${{ github.ref_name }}-${{ hashFiles('**/CMakeLists.txt', '**/*.cmake') }}
restore-keys: |
${{ inputs.cache-key-prefix }}-${{ runner.os }}-${{ github.ref_name }}-
${{ inputs.cache-key-prefix }}-${{ runner.os }}-
- name: Configure ccache
shell: bash
run: ci/scripts/setup_ccache.sh