1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- name: Release
- on:
- push:
- tags:
- - v*.*.*
- jobs:
- release:
- name: Create release
- runs-on: ubuntu-20.04
- steps:
- - name: Set variables
- id: init
- run: |
- echo "tag=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
- echo "version=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
- - name: Checkout
- uses: actions/checkout@v3
- - name: Write release body
- id: body
- run: |
- FILENAME=RELEASE.md
- extras/scripts/get-release-body.sh ${{ steps.init.outputs.tag }} CHANGELOG.md | tee $FILENAME
- echo "filename=$FILENAME" >> $GITHUB_OUTPUT
- - name: Amalgamate ArduinoJson.h
- id: amalgamate_h
- run: |
- FILENAME=ArduinoJson-${{ steps.init.outputs.tag }}.h
- extras/scripts/build-single-header.sh src/ArduinoJson.h "$FILENAME"
- echo "filename=$FILENAME" >> $GITHUB_OUTPUT
- - name: Amalgamate ArduinoJson.hpp
- id: amalgamate_hpp
- run: |
- FILENAME=ArduinoJson-${{ steps.init.outputs.tag }}.hpp
- extras/scripts/build-single-header.sh src/ArduinoJson.hpp "$FILENAME"
- echo "filename=$FILENAME" >> $GITHUB_OUTPUT
- - name: Create Arduino package
- id: arduino
- run: |
- FILENAME=ArduinoJson-${{ steps.init.outputs.tag }}.zip
- extras/scripts/build-arduino-package.sh . "$FILENAME"
- echo "filename=$FILENAME" >> $GITHUB_OUTPUT
- - name: Create release
- uses: ncipollo/release-action@v1
- with:
- bodyFile: ${{ steps.body.outputs.filename }}
- name: ArduinoJson ${{ steps.init.outputs.version }}
- artifacts: ${{ steps.amalgamate_h.outputs.filename }},${{ steps.amalgamate_hpp.outputs.filename }},${{ steps.arduino.outputs.filename }}
- token: ${{ secrets.GITHUB_TOKEN }}
- idf:
- runs-on: ubuntu-latest
- steps:
- - name: Checkout
- uses: actions/checkout@v3
- - name: Upload component to the component registry
- uses: espressif/upload-components-ci-action@v1
- with:
- name: ArduinoJson
- namespace: bblanchon
- api_token: ${{ secrets.IDF_COMPONENT_API_TOKEN }}
- particle:
- runs-on: ubuntu-latest
- steps:
- - name: Install
- run: npm install -g particle-cli
- - name: Checkout
- uses: actions/checkout@v3
- - name: Login
- run: particle login --token ${{ secrets.PARTICLE_TOKEN }}
- - name: Publish
- run: extras/scripts/publish-particle-library.sh
|