-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Actions] Managing dependencies to make the workflows callable from d…
…ifferent repos (#28) * Create Linux build template * Use the Linux build template * Main action does not need to be callable anymore * Changing the repo owner to be fixed since this workflow is callable now * Preparing for pull request
- Loading branch information
1 parent
e7d02e0
commit 308de11
Showing
2 changed files
with
81 additions
and
74 deletions.
There are no files selected for viewing
This file contains 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 file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
name: Build ThunderLibraries on Linux | ||
|
||
on: | ||
workflow_call: | ||
|
||
jobs: | ||
ThunderLibraries: | ||
|
||
runs-on: ubuntu-latest | ||
|
||
strategy: | ||
matrix: | ||
build_type: [Debug, Release, MinSizeRel] | ||
|
||
name: Build type - ${{matrix.build_type}} | ||
steps: | ||
- name: Install necessary packages | ||
uses: nick-fields/retry@v2 | ||
with: | ||
timeout_minutes: 10 | ||
max_attempts: 10 | ||
command: | | ||
sudo gem install apt-spy2 | ||
sudo apt-spy2 fix --commit --launchpad --country=US | ||
sudo apt-get update | ||
sudo apt install python3-pip | ||
pip install jsonref | ||
sudo apt install build-essential cmake ninja-build libusb-1.0-0-dev zlib1g-dev libssl-dev | ||
- name: Checkout Thunder | ||
uses: actions/checkout@v3 | ||
with: | ||
path: Thunder | ||
repository: rdkcentral/Thunder | ||
|
||
- name: Download artifacts | ||
uses: actions/download-artifact@v3 | ||
with: | ||
name: Thunder-${{matrix.build_type}}-artifact | ||
path: ${{matrix.build_type}} | ||
|
||
- name: Unpack files | ||
run: | | ||
tar -xvzf ${{matrix.build_type}}/${{matrix.build_type}}.tar.gz | ||
rm ${{matrix.build_type}}/${{matrix.build_type}}.tar.gz | ||
- name: Checkout ThunderLibraries | ||
uses: actions/checkout@v3 | ||
with: | ||
path: ThunderLibraries | ||
repository: WebPlatformForEmbedded/ThunderLibraries | ||
|
||
- name: Regex ThunderLibraries | ||
if: contains(github.event.pull_request.body, '[Options:') | ||
id: libs | ||
uses: AsasInnab/regex-action@v1 | ||
with: | ||
regex_pattern: '(?<=\[Options:).*(?=\])' | ||
regex_flags: 'gim' | ||
search_string: ${{github.event.pull_request.body}} | ||
|
||
- name: Build ThunderLibraries | ||
run: | | ||
cmake -G Ninja -S ThunderLibraries -B ${{matrix.build_type}}/build/ThunderLibraries \ | ||
-DCMAKE_CXX_FLAGS="-Wall -Wextra -Wpedantic -Werror" \ | ||
-DCMAKE_INSTALL_PREFIX="${{matrix.build_type}}/install/usr" \ | ||
-DCMAKE_MODULE_PATH="${PWD}/${{matrix.build_type}}/install/usr/include/WPEFramework/Modules" \ | ||
-DBROADCAST=ON \ | ||
${{steps.libs.outputs.first_match}} | ||
cmake --build ${{matrix.build_type}}/build/ThunderLibraries --target install | ||
- name: Tar files | ||
run: tar -czvf ${{matrix.build_type}}.tar.gz ${{matrix.build_type}} | ||
|
||
- name: Upload | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: ThunderLibraries-${{matrix.build_type}}-artifact | ||
path: ${{matrix.build_type}}.tar.gz |