diff --git a/.github/workflows/build-daily-clang_hana.yml b/.github/workflows/build-daily-clang_hana.yml new file mode 100644 index 0000000..4a6b1c6 --- /dev/null +++ b/.github/workflows/build-daily-clang_hana.yml @@ -0,0 +1,67 @@ +### DO NOT EDIT - created by a script ### +name: clang_hana via clang hana-clang-trunk + +on: + schedule: + - cron: '0 0 * * *' + workflow_dispatch: + +jobs: + check-activity: + runs-on: ubuntu-latest + outputs: + should_build: ${{ steps.check.outputs.should_build }} + steps: + - name: Check for recent commits + id: check + run: | + REPOS='["https://github.com/hanickadot/llvm-project/tree/compiler-explorer/hana-clang"]' + STALE_DAYS=7 + + SINCE_DATE=$(date -d "${STALE_DAYS} days ago" --iso-8601=seconds) + echo "Checking for commits since ${SINCE_DATE} (${STALE_DAYS} days ago)" + HAS_RECENT=false + + for repo in $(echo "$REPOS" | jq -r '.[]'); do + REPO_PATH=$(echo "$repo" | sed -E 's|https://github.com/([^/]+/[^/]+).*|\1|') + BRANCH=$(echo "$repo" | sed -n -E 's|https://github.com/[^/]+/[^/]+/tree/(.+)|\1|p') + + if [ -n "$BRANCH" ]; then + echo "Checking $REPO_PATH (branch: $BRANCH) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?sha=${BRANCH}&since=${SINCE_DATE}&per_page=1" || echo "[]") + else + echo "Checking $REPO_PATH (default branch) for recent commits..." + COMMITS=$(curl -sf "https://api.github.com/repos/${REPO_PATH}/commits?since=${SINCE_DATE}&per_page=1" || echo "[]") + fi + + if [ "$(echo "$COMMITS" | jq 'length')" -gt 0 ]; then + echo "Found recent commits in $repo" + HAS_RECENT=true + break + fi + done + + if [ "$HAS_RECENT" = "true" ]; then + echo "should_build=true" >> "$GITHUB_OUTPUT" + else + echo "No recent commits in any repo (within ${STALE_DAYS} days), skipping build" + echo "should_build=false" >> "$GITHUB_OUTPUT" + fi + + daily-build: + needs: check-activity + if: ${{ needs.check-activity.outputs.should_build == 'true' }} + runs-on: [ 'self-hosted', 'ce', 'linux', 'x64' ] + steps: + - name: Start from a clean directory + uses: AutoModality/action-clean@v1.1.0 + - uses: actions/checkout@v4 + - name: Run the build + uses: ./.github/actions/daily-build + with: + image: clang + name: clang_hana + command: build.sh + args: hana-clang-trunk + AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} diff --git a/build-status.md b/build-status.md index e8c8931..05a2ca8 100644 --- a/build-status.md +++ b/build-status.md @@ -19,6 +19,7 @@ * [![Status](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_cppx_ext.yml/badge.svg)](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_cppx_ext.yml)![Last success](https://img.shields.io/badge/dynamic/json?color=success&label=Last+OK&query=%24.last_success.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_cppx_ext)![Last build](https://img.shields.io/badge/dynamic/json?color=yellow&label=Last+build&query=%24.last_build.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_cppx_ext) * [![Status](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_cppx_p2320.yml/badge.svg)](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_cppx_p2320.yml)![Last success](https://img.shields.io/badge/dynamic/json?color=success&label=Last+OK&query=%24.last_success.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_cppx_p2320)![Last build](https://img.shields.io/badge/dynamic/json?color=yellow&label=Last+build&query=%24.last_build.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_cppx_p2320) * [![Status](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_ericwf_contracts.yml/badge.svg)](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_ericwf_contracts.yml)![Last success](https://img.shields.io/badge/dynamic/json?color=success&label=Last+OK&query=%24.last_success.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_ericwf_contracts)![Last build](https://img.shields.io/badge/dynamic/json?color=yellow&label=Last+build&query=%24.last_build.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_ericwf_contracts) +* [![Status](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_hana.yml/badge.svg)](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_hana.yml)![Last success](https://img.shields.io/badge/dynamic/json?color=success&label=Last+OK&query=%24.last_success.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_hana)![Last build](https://img.shields.io/badge/dynamic/json?color=yellow&label=Last+build&query=%24.last_build.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_hana) * [![Status](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_implicit_constexpr.yml/badge.svg)](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_implicit_constexpr.yml)![Last success](https://img.shields.io/badge/dynamic/json?color=success&label=Last+OK&query=%24.last_success.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_implicit_constexpr)![Last build](https://img.shields.io/badge/dynamic/json?color=yellow&label=Last+build&query=%24.last_build.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_implicit_constexpr) * [![Status](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_ir.yml/badge.svg)](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_ir.yml)![Last success](https://img.shields.io/badge/dynamic/json?color=success&label=Last+OK&query=%24.last_success.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_ir)![Last build](https://img.shields.io/badge/dynamic/json?color=yellow&label=Last+build&query=%24.last_build.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_ir) * [![Status](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_lifetime.yml/badge.svg)](https://github.com/compiler-explorer/compiler-workflows/actions/workflows//build-daily-clang_lifetime.yml)![Last success](https://img.shields.io/badge/dynamic/json?color=success&label=Last+OK&query=%24.last_success.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_lifetime)![Last build](https://img.shields.io/badge/dynamic/json?color=yellow&label=Last+build&query=%24.last_build.timestamp&url=https%3A%2F%2Flambda.compiler-explorer.com%2Fcompiler-build%2Fclang_lifetime) diff --git a/compilers.yaml b/compilers.yaml index 2e6c59d..7c28718 100644 --- a/compilers.yaml +++ b/compilers.yaml @@ -54,6 +54,7 @@ compilers: - { image: clang, name: clang_reflection, args: reflection-trunk, repos: ["https://github.com/matus-chochlik/llvm-project/tree/reflection"] } - { image: clang, name: clang_relocatable, args: relocatable-trunk, repos: ["https://github.com/Quuxplusone/llvm-project/tree/trivially-relocatable"] } - { image: clang, name: clang_variadic_friends, args: variadic-friends-trunk, repos: ["https://github.com/dancrn/llvm-project/tree/cxx-variadic-friends"] } + - { image: clang, name: clang_hana, args: hana-clang-trunk, repos: ["https://github.com/hanickadot/llvm-project/tree/compiler-explorer/hana-clang"] } - { image: dotnet, name: dotnet, command: build.sh, args: trunk } - { image: clang, name: mlir_trunk, args: mlir-trunk } - { image: go, name: go }