I am building a Tizen/Samsung application. I dig through lots of documentation and blog articles on how to do it but I am on a stage where I want my Github Actions to build the app so I can distribute it to others, like QAs or internal testing. And - So far I haven't found a good solution to achieve a complete CI.
Building a Tizen package can be easily done with Tizen CLI. Basically you can do any kind of thing such as installing Tizen Studio and running a CLI build inside your GitHub workflow file. Here is an example workflow:
name: build
on:
push:
pull_request:
workflow_dispatch:
jobs:
build-wgt:
timeout-minutes: 10
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install Tizen Studio
run: |
sudo apt update
sudo apt install -y pciutils zip libncurses5 python libpython2.7
sudo apt clean
curl http://download.tizen.org/sdk/Installer/tizen-studio_4.1/web-cli_Tizen_Studio_4.1_ubuntu-64.bin -o install.bin
chmod a+x install.bin
./install.bin --accept-license $HOME/tizen-studio
rm install.bin
- name: Install Tizen packages
run: |
$HOME/tizen-studio/package-manager/package-manager-cli.bin install \
Certificate-Manager NativeCLI WEARABLE-5.5-WebAppDevelopment-CLI
- name: Run Tizen CLI build
run: |
export PATH=$PATH:$HOME/tizen-studio/tools/ide/bin
tizen build-web -- [PathToYourProject]
tizen package -t wgt -- [PathToYourProject]
- name: Upload artifacts
uses: actions/upload-artifact@v2
with:
name: my-wgt
path: [PathToYourProject]/[ProjectName].wgt
Note that the script has not been tested and may not work (actually I don't have any experience with Tizen web apps). I just wanted to give you a simple idea of how to get started.
The remaining thing is to sign the output app with your certificate (using the -s
option when running the package
command) while keeping the certificate private from your public Docker or GitHub repo. You'll have to figure out how to do it yourself.