Documentation
- ๐ Welcome to the CMake RE Documentation
- ๐ Getting started with CMake RE for C++
- ๐ฆ Getting started with CMake RE for Rust (alpha)
- Key Principles and Goals
- ๐ชฉ Developer Machine Digital Twin
- ๐ฉ๐ผโ๐ป cmake-re --help | Command Line Reference
- ๐ฆ L1 Build cache
- ๐ฆ L1 Build Cache Sharing
- ๐ฆ FetchContent() and Package Managers
- ๐ป Environments
- ๐ป Environment Layers Specifications
- ๐ป Self-hosted runners
- Authentication
- Ignore and exclude - Caching and Mirroring
- Accessing hermetic builds folders
- Continuous integration
- Environment variables
- ๐ก๏ธ Data Security and Privacy
- tipi - ๐ฎ EXPERIMENTAL - CMakeLists.txt Generator
- tipi - ๐ฎ EXPERIMENTAL - Getting started with tipi CMakeLists generator
- tipi - Compile options
- tipi - Integrated Package Manager
- tipi - Running tests
- tipi - IDE Integration
Continuous integration
Sharing tipi remote jobs ``
When using tipi in CI workflow, you might end up having more CI build running than available tipi jobs following your subscription.
You can queue the build execution with tipi --wait-build-queue
.
This allows remote builds on the CI in order to share tipi remote jobs without interfering.
With GitHub Actions
The tipi subscription can be used to run your build and test your project in GitHub actions.
Run tipi ci
to generate the YAML configuration for GitHub CI.
Authenticating on tipi.build from CI workflows
Information is available as reference here : Command Line authentication to handle authentication in CI workflows.
An example .github/workflows/ci.yaml
would look like the following :
name: build
# This workflow is triggered on pushes to the repository.
on: [push]
env:
# Learn how to set Github CI Secrets : https://docs.github.com/de/actions/security-guides/using-secrets-in-github-actions
TIPI_ACCESS_TOKEN: "${{ secrets.TIPI_ACCESS_TOKEN }}"
TIPI_REFRESH_TOKEN: "${{ secrets.TIPI_REFRESH_TOKEN }}"
TIPI_VAULT_PASSPHRASE: ${{ secrets.TIPI_VAULT_PASSPHRASE }}
jobs:
build:
name: build-linux
runs-on: ubuntu-latest
container: tipibuild/tipi-ubuntu
steps:
- name: checkout
uses: actions/checkout@v2
- name: tipi builds project
run: |
tipi connect
tipi build . --target linux --dont-upgrade --verbose --test all
Found an error or want to add more info? Write an issue or contribute changes to this documentation at tipi-build/docs on