lib/rebase.sh: support duplicate with --ignore-immutable #188
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
| # This Source Code Form is licensed MPL-2.0: http://mozilla.org/MPL/2.0 | |
| # Linting: xclip -sel c <.github/workflows/testing.yml # https://rhysd.github.io/actionlint/ | |
| on: | |
| push: | |
| branches: ['main', 'master', 'trunk', 'wip/**'] | |
| tags: [ 'v[0-9]+.[0-9]+.[0-9]+*' ] | |
| pull_request: | |
| branches: ['trunk', 'wip/**'] # Only run PRs targeting these branches | |
| jobs: | |
| MakeDistCheck: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - run: | | |
| sudo apt-get update | |
| sudo TZ=Etc/UTC DEBIAN_FRONTEND=noninteractive apt-get install -y tzdata nano tmux asciinema pv bsdextrautils | |
| - { uses: actions/checkout@v4, with: { fetch-depth: 0 } } | |
| - run: git fetch -f --tags # Fix actions/checkout#290 | |
| - run: | | |
| curl -s -L https://github.com/junegunn/fzf/releases/download/v0.65.2/fzf-0.65.2-linux_amd64.tar.gz | | |
| sudo tar zxvf - -C /usr/local/bin/ fzf | |
| fzf --version | |
| - run: | | |
| curl -s -L https://github.com/martinvonz/jj/releases/download/v0.34.0/jj-v0.34.0-x86_64-unknown-linux-musl.tar.gz | | |
| sudo tar zxvf - -C /usr/local/bin/ ./jj | |
| jj --version | |
| - run: | | |
| cd /tmp && wget -q -c https://github.com/jgm/pandoc/releases/download/3.7.0.2/pandoc-3.7.0.2-1-amd64.deb | |
| sudo apt install ./pandoc-3.7.0.2-1-amd64.deb && pandoc --version | |
| - run: | | |
| make all | |
| - run: | | |
| make check | |
| - run: | | |
| sudo make install | |
| - run: | | |
| make installcheck | |
| - run: | | |
| sudo make uninstall | |
| - run: | | |
| make clean | |
| - run: | | |
| make distcheck | |
| - run: | | |
| make artifacts/jj-fzf.sfx | |
| - run: | | |
| make artifacts/jj-fzf.1.gz | |
| - uses: actions/upload-artifact@v4 | |
| with: { name: jj-fzf-Artifacts, path: artifacts/ } | |
| - name: Screencast Tests | |
| run: | | |
| mkdir -p ~/.cache/ | |
| cd ~/.cache/ | |
| git clone --bare --single-branch --shallow-since 2024-12-31 -b v0.29.0 https://github.com/jj-vcs/jj.git | |
| cd - | |
| make test | |
| - uses: actions/upload-artifact@v4 | |
| with: { name: jj-fzf-Screencasts, path: screencasts/*.cast } | |
| CreateRelease: | |
| runs-on: ubuntu-24.04 | |
| needs: [ MakeDistCheck ] | |
| if: github.ref_type == 'tag' # https://docs.github.com/en/actions/reference/events-that-trigger-workflows | |
| # https://docs.github.com/en/actions/security-for-github-actions/security-guides/automatic-token-authentication#modifying-the-permissions-for-the-github_token | |
| permissions: { contents: write } # allow github.token to create a release | |
| env: { GH_TOKEN: "${{ github.token }}" } | |
| steps: | |
| - { uses: actions/checkout@v4, with: { fetch-depth: 0 } } | |
| - run: git fetch -f --tags # Fix actions/checkout#290 | |
| - uses: actions/download-artifact@v4 | |
| with: { path: ./artifacts, merge-multiple: true } | |
| - run: ls -alR artifacts/ | |
| - run: | | |
| .github/workflows/gh-release.sh "JJ-FZF" | |
| Ping-IRC: | |
| if: always() | |
| needs: [MakeDistCheck] | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - { uses: actions/[email protected], with: { fetch-depth: 0, github-server-url: 'https://github.com' } } | |
| - run: git fetch -f --tags && git describe --long # Fix actions/checkout#290 | |
| - name: Check Jobs | |
| run: | | |
| echo '${{ needs.MakeDistCheck.result }}' | |
| [[ ${{ needs.MakeDistCheck.result }} =~ success|skipped ]] | |
| - name: Ping IRC | |
| if: ${{ always() && !env.ACT }} | |
| run: | | |
| R='${{ github.repository }}' && R=${R#*/} | |
| B='${{ github.ref }}' && B=${B#refs/heads/} | |
| S='${{ job.status }}' && URL='${{ github.event.head_commit.url }}' | |
| A='${{ github.actor }}' && B="$(git branch --show-current)" | |
| MSG=$(git log -1 --format='%s') | |
| .github/workflows/ircbot.py -q -j "#Anklang" -R "$R" -U "$A" -D "$B" -S "$S" "$MSG" "$URL" |