name: Release Lit permissions: contents: read on: workflow_dispatch: inputs: release-version: description: 'Release Version' required: true type: string workflow_call: inputs: release-version: description: 'Release Version' required: true type: string secrets: RELEASE_TASKS_USER_TOKEN: description: "Secret used to check user permissions." required: false jobs: release-lit: name: Release Lit runs-on: ubuntu-24.04 steps: - name: Checkout LLVM uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: ref: "llvmorg-${{ inputs.release-version }}" - name: Install dependencies run: | sudo apt-get update sudo apt-get install -y python3-setuptools python3-psutil python3-github - name: Check Permissions env: GITHUB_TOKEN: ${{ github.token }} USER_TOKEN: ${{ secrets.RELEASE_TASKS_USER_TOKEN }} run: | ./llvm/utils/release/./github-upload-release.py --token "$GITHUB_TOKEN" --user ${{ github.actor }} --user-token "$USER_TOKEN" check-permissions - name: Setup Cpp uses: aminya/setup-cpp@9bc9b8cd8a8d678f920e4e1e73f29da8010ced51 # v1.7.2 with: compiler: llvm-16.0.6 cmake: true ninja: true - name: Test lit run: | mkdir build && cd build export FILECHECK_OPTS='-dump-input-filter=all -vv -color' cmake ../llvm -DCMAKE_BUILD_TYPE=Release -G Ninja ninja -v -j $(nproc) check-lit - name: Package lit run: | cd llvm/utils/lit # Remove 'dev' suffix from lit version. sed -i 's/ + "dev"//g' lit/__init__.py python3 setup.py sdist bdist_wheel - name: Upload lit to test.pypi.org uses: pypa/gh-action-pypi-publish@ed0c53931b1dc9bd32cbe73a98c7f6766f8a527e # v1.13.0 with: password: ${{ secrets.LLVM_LIT_TEST_PYPI_API_TOKEN }} repository-url: https://test.pypi.org/legacy/ packages-dir: llvm/utils/lit/dist/ - name: Upload lit to pypi.org uses: pypa/gh-action-pypi-publish@ed0c53931b1dc9bd32cbe73a98c7f6766f8a527e # v1.13.0 with: password: ${{ secrets.LLVM_LIT_PYPI_API_TOKEN }} packages-dir: llvm/utils/lit/dist/