-
Notifications
You must be signed in to change notification settings - Fork 18
67 lines (64 loc) · 3.46 KB
/
release_clue_nrf52840.yml
File metadata and controls
67 lines (64 loc) · 3.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
name: CLUE nRF52840 Release
on:
workflow_dispatch:
inputs:
version:
description: 'Release version'
required: true
jobs:
release:
runs-on: "ubuntu-latest"
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1 # pulls version from rust-toolchain file
- name: Install elf2uf2
run: cargo install uf2conv
- name: Build bootloader
run: |
cd boards/clue_nrf52840-bootloader
export BOOTLOADER_VERSION="${{ github.event.inputs.version }}"
export BOOTLOADER_HASH="$(git rev-parse HEAD)"
export BOOTLOADER_KERNEL_HASH="$(cat Cargo.lock | grep https://github.com/tock/tock?rev=405417 | uniq | cut -d '#' -f 2 | cut -d '"' -f 1)"
make
- name: Build uf2
run: uf2conv target/thumbv7em-none-eabi/release/clue_nrf52840-bootloader.bin -f 0xADA52840 --base 0x26000 --output target/thumbv7em-none-eabi/release/clue_nrf52840-bootloader.uf2
- name: Version
run: |
echo "Version: ${{ github.event.inputs.version }}" > tock-bootloader.clue_nrf52840.version
echo "Toolchain: $(rustc --version)" >> tock-bootloader.clue_nrf52840.version
echo "Tock Bootloader Hash: $(git rev-parse HEAD)" >> tock-bootloader.clue_nrf52840.version
echo Tock Hash: $(cat boards/clue_nrf52840-bootloader/Cargo.lock | grep https://github.com/tock/tock?rev=405417 | uniq | cut -d '#' -f 2 | cut -d '"' -f 1) >> tock-bootloader.clue_nrf52840.version
echo "Bootloader SHA256: $(sha256sum target/thumbv7em-none-eabi/release/clue_nrf52840-bootloader.bin | cut -d ' ' -f 1)" >> tock-bootloader.clue_nrf52840.version
echo "Build Date: $(date)" >> tock-bootloader.clue_nrf52840.version
- name: Upload bootloader release
uses: svenstaro/upload-release-action@v2
with:
release_name: CLUE nRF52840 Express ${{ github.event.inputs.version }}
prerelease: true
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: target/thumbv7em-none-eabi/release/clue_nrf52840-bootloader.bin
asset_name: tock-bootloader.clue_nrf52840.${{ github.event.inputs.version }}.bin
tag: clue_nrf52840-${{ github.event.inputs.version }}
overwrite: true
body: "Bootloader for CLUE nRF52840 Express ${{ github.event.inputs.version }}"
- name: Upload bootloader uf2
uses: svenstaro/upload-release-action@v2
with:
release_name: CLUE nRF52840 Express ${{ github.event.inputs.version }}
prerelease: true
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: target/thumbv7em-none-eabi/release/clue_nrf52840-bootloader.uf2
asset_name: tock-bootloader.clue_nrf52840.${{ github.event.inputs.version }}.uf2
tag: clue_nrf52840-${{ github.event.inputs.version }}
overwrite: true
body: "Bootloader for CLUE nRF52840 Express ${{ github.event.inputs.version }}"
- name: Upload bootloader version
uses: svenstaro/upload-release-action@v2
with:
release_name: CLUE nRF52840 Express ${{ github.event.inputs.version }}
prerelease: true
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: tock-bootloader.clue_nrf52840.version
asset_name: tock-bootloader.clue_nrf52840.${{ github.event.inputs.version }}.version
tag: clue_nrf52840-${{ github.event.inputs.version }}