Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 25 additions & 2 deletions .github/workflows/sycl-linux-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,10 @@ on:
default: 3
e2e_binaries_artifact:
type: string
required: False
required: false
pack_release:
type: string
required: false

outputs:
build_conclusion:
Expand Down Expand Up @@ -100,6 +103,10 @@ on:
options:
- 3

pack_release:
type: string
required: false

permissions: read-all

jobs:
Expand Down Expand Up @@ -215,7 +222,23 @@ jobs:
# TODO consider moving this to Dockerfile.
export LD_LIBRARY_PATH=/usr/local/cuda/compat/:/usr/local/cuda/lib64:$LD_LIBRARY_PATH
LIT_OPTS="--allow-empty-runs" LIT_FILTER="e2e_test_requirements" cmake --build $GITHUB_WORKSPACE/build --target check-sycl
- name: Install
- name: Install sycl-toolchain
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' }}
run: |
cmake --build $GITHUB_WORKSPACE/build --target deploy-sycl-toolchain

- name: Pack toolchain release
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' && inputs.pack_release == 'true' }}
run: tar -I '${{ steps.artifact_info.outputs.COMPRESS }}' -cf ${{ steps.artifact_info.outputs.ARCHIVE_NAME }} -C $GITHUB_WORKSPACE/build/install .
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

how is this different from the archive created in Pack toolchain on line 238/261?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The main difference is lack of extra tools that are only used in testing - they are being built and deployed on lines 246-253

Going forward, we would like to release binaries and for that we would like to minimize our release package by at least dropping internal testing tools.

Of course, the current approach isn't exactly the most efficient, because it effectively bundles the SYCL RT twice into artifacts, but that's a start, it will be improved later

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's how :)
image

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this only for sycl-rel or will we be releasing the new no-tools package from the sycl branch too?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes it's only for sycl-rel. There is inputs.pach_release to trigger this step

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just preserved it during the refactoring, it was there long before me :D

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Then it's time to eliminate it:)) I'll create a PR.

Anyway, @sarnex @aelovikov-intel, can we merge this one and then refactor the workflow file?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sarnex @aelovikov-intel gentle friendly soft ping

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm fine, but I think @sarnex was the one objecting, so let's wait for him to confirm he's ok.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah its fine

- name: Upload toolchain release
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' && inputs.pack_release == 'true' }}
uses: actions/upload-artifact@v4
with:
name: sycl_linux_release
path: ${{ steps.artifact_info.outputs.ARCHIVE_NAME }}
retention-days: ${{ inputs.retention-days }}

- name: Install utilities
if: ${{ always() && !cancelled() && steps.build.conclusion == 'success' }}
# TODO replace utility installation with a single CMake target
run: |
Expand Down
Loading