Merge pull request #46 from wep21/patch-1 #51
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Generate CI pipelines for ROS 2 packages | |
| permissions: | |
| actions: write | |
| contents: write | |
| env: | |
| ROS_VERSION: 2 | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| persist-credentials: false # otherwise, the token used is the GITHUB_TOKEN, instead of your personal token | |
| fetch-depth: 0 # otherwise, you will failed to push refs to dest repo | |
| - uses: prefix-dev/setup-pixi@v0.8.10 | |
| with: | |
| frozen: true | |
| - name: Generate recipes for linux-64 | |
| run: | | |
| git clean -fdx | |
| pixi run -v vinca --multiple --platform linux-64 | |
| - name: Generate GitHub Actions pipelines for linux-64 | |
| run: | | |
| pixi run -v vinca-gha --platform linux-64 --trigger-branch buildbranch_linux -d ./recipes | |
| - name: Commit files for linux-64 | |
| run: | | |
| if [[ -f "linux.yml" ]]; then | |
| mv linux.yml .github/workflows/ | |
| git config --local user.email "action@github.com" | |
| git config --local user.name "GitHub Action" | |
| git add . -f | |
| git commit -m "Add build files `date '+%Y-%m-%d-%H%M'`" -a | |
| remote_repo="https://${GITHUB_ACTOR}:${INPUT_GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git" | |
| git push "${remote_repo}" HEAD:buildbranch_linux --follow-tags --force | |
| fi | |
| env: | |
| INPUT_GITHUB_TOKEN: ${{ secrets.GHA_PAT }} | |
| # Generate recipes for osx | |
| - name: Reset repo | |
| run: | | |
| git reset --hard origin/main | |
| - name: Generate recipes for osx-64 | |
| run: | | |
| git clean -fdx | |
| pixi run -v vinca --multiple --platform osx-64 | |
| - name: Generate GitHub Actions pipelines for osx-64 | |
| run: | | |
| pixi run -v vinca-gha --platform osx-64 --trigger-branch buildbranch_osx -d ./recipes | |
| - name: Commit files for osx-64 | |
| run: | | |
| if [[ -f "osx.yml" ]]; then | |
| mv osx.yml .github/workflows/ | |
| git config --local user.email "action@github.com" | |
| git config --local user.name "GitHub Action" | |
| git add . -f | |
| git commit -m "Add build files `date '+%Y-%m-%d-%H%M'`" -a | |
| remote_repo="https://${GITHUB_ACTOR}:${INPUT_GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git" | |
| git push "${remote_repo}" HEAD:buildbranch_osx --follow-tags --force | |
| fi | |
| env: | |
| INPUT_GITHUB_TOKEN: ${{ secrets.GHA_PAT }} | |
| # Generate recipes for osx-arm64 | |
| - name: Reset repo | |
| run: | | |
| git reset --hard origin/main | |
| - name: Generate recipes for osx-arm64 | |
| run: | | |
| git clean -fdx | |
| pixi run -v vinca --multiple --platform osx-arm64 | |
| - name: Generate GitHub Actions pipelines for osx-arm64 | |
| run: | | |
| pixi run -v vinca-gha --platform osx-arm64 --trigger-branch buildbranch_osx_arm64 -d ./recipes | |
| - name: Commit files for osx-arm64 | |
| run: | | |
| if [[ -f "osx_arm64.yml" ]]; then | |
| mv osx_arm64.yml .github/workflows/ | |
| git config --local user.email "action@github.com" | |
| git config --local user.name "GitHub Action" | |
| git add . -f | |
| git commit -m "Add build files `date '+%Y-%m-%d-%H%M'`" -a | |
| remote_repo="https://${GITHUB_ACTOR}:${INPUT_GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git" | |
| git push "${remote_repo}" HEAD:buildbranch_osx_arm64 --follow-tags --force | |
| fi | |
| env: | |
| INPUT_GITHUB_TOKEN: ${{ secrets.GHA_PAT }} | |
| # Generate recipes for Windows | |
| - name: Reset repo | |
| run: | | |
| git reset --hard origin/main | |
| - name: Generate recipes for win-64 | |
| run: | | |
| git clean -fdx | |
| pixi run -v vinca --multiple --platform win-64 | |
| - name: Generate GitHub Actions pipelines for win-64 | |
| run: | | |
| # --batch_size 10 is a workaround for https://github.com/RoboStack/robostack.github.io/issues/105 | |
| pixi run -v vinca-gha --platform win-64 --trigger-branch buildbranch_win -d ./recipes --batch_size 10 | |
| - name: Commit files for win-64 | |
| run: | | |
| if [[ -f "win.yml" ]]; then | |
| mv win.yml .github/workflows/ | |
| git config --local user.email "action@github.com" | |
| git config --local user.name "GitHub Action" | |
| git add . -f | |
| git commit -m "Add build files `date '+%Y-%m-%d-%H%M'`" -a | |
| remote_repo="https://${GITHUB_ACTOR}:${INPUT_GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git" | |
| git push "${remote_repo}" HEAD:buildbranch_win --follow-tags --force | |
| fi | |
| env: | |
| INPUT_GITHUB_TOKEN: ${{ secrets.GHA_PAT }} | |
| # Generate recipes for Linux ARM64 | |
| - name: Reset repo | |
| run: | | |
| git reset --hard origin/main | |
| - name: Generate recipes for linux-aarch64 | |
| run: | | |
| git clean -fdx | |
| pixi run -v vinca --multiple --platform linux-aarch64 | |
| - name: Generate GitHub Actions pipelines for linux-aarch64 | |
| run: | | |
| pixi run -v vinca-gha --platform linux-aarch64 --trigger-branch buildbranch_linux_aarch64 -d ./recipes | |
| - name: Commit files for linux-aarch64 | |
| run: | | |
| if [[ -f "linux_aarch64.yml" ]]; then | |
| mv linux_aarch64.yml .github/workflows/build_linux_aarch64.yml | |
| git config --local user.email "action@github.com" | |
| git config --local user.name "GitHub Action" | |
| git add . -f | |
| git commit -m "Add build files `date '+%Y-%m-%d-%H%M'`" -a | |
| remote_repo="https://${GITHUB_ACTOR}:${INPUT_GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git" | |
| git push "${remote_repo}" HEAD:buildbranch_linux_aarch64 --follow-tags --force | |
| fi | |
| env: | |
| INPUT_GITHUB_TOKEN: ${{ secrets.GHA_PAT }} | |
| on: | |
| push: | |
| branches: | |
| - master | |
| - main |