46 lines
1.5 KiB
YAML
46 lines
1.5 KiB
YAML
name: Build CI
|
|
|
|
on: [pull_request, push]
|
|
|
|
jobs:
|
|
test:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Dump GitHub context
|
|
env:
|
|
GITHUB_CONTEXT: ${{ toJson(github) }}
|
|
run: echo "$GITHUB_CONTEXT"
|
|
- name: Translate Repo Name For Build Tools filename_prefix
|
|
id: repo-name
|
|
run: |
|
|
echo ::set-output name=repo-name::$(
|
|
echo ${{ github.repository }} |
|
|
awk -F '\/' '{ print tolower($2) }' |
|
|
tr '_' '-'
|
|
)
|
|
- name: Set up Python 3.6
|
|
uses: actions/setup-python@v1
|
|
with:
|
|
python-version: 3.6
|
|
- name: Versions
|
|
run: |
|
|
python3 --version
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: true
|
|
- name: Install deps
|
|
run: |
|
|
sudo apt-get install -y gettext gawk
|
|
pip install -r requirements.txt
|
|
- name: Library version
|
|
run: git describe --dirty --always --tags
|
|
- name: Package Folder Prefix For circuitpython-build-tools (Community Bundle Specific)
|
|
id: pkg-folder
|
|
run: |
|
|
echo ::set-output name=prefix::$(
|
|
ls -RUx |
|
|
gawk -F '\n' '{ match($1, /(drivers|helpers)\/(.+)\/(.+)\:/, arr) ; if (length(arr[0]) > 0 && match(arr[3], arr[2]) > 0) printf "%s, ", arr[3] }' |
|
|
gawk '{ trimmed = substr($0, 1, length($0) - 2) ; print "\"" trimmed "\"" }'
|
|
)
|
|
- name: Build assets
|
|
run: circuitpython-build-bundles --filename_prefix ${{ steps.repo-name.outputs.repo-name }} --library_location libraries --library_depth 2 --package_folder_prefix ${{ steps.pkg-folder.outputs.prefix }}
|