On Thu, Jun 17, 2021 at 1:19 PM Simon Glass <sjg@xxxxxxxxxxxx> wrote: > > Hi Rob, > > On Mon, 14 Jun 2021 at 11:36, Rob Herring <robh@xxxxxxxxxx> wrote: > > > > Travis-ci.org is going away and moving to Travis-ci.com requires some > > work. It would probably involve fixing authentication issues yet again. > > Instead, let's just move to a GH actions job which is fairly trivial to > > setup. This has the side benefit of CI will run on anyone's fork without > > further setup. > > > > As part of this, the specification file name gains a 'git-describe' > > based version number. > > > > Signed-off-by: Rob Herring <robh@xxxxxxxxxx> > > --- > > .github/workflows/ci.yml | 60 ++++++++++++++++++++++++++++++++++++++++ > > 1 file changed, 60 insertions(+) > > create mode 100644 .github/workflows/ci.yml > > Reviewed-by: Simon Glass <sjg@xxxxxxxxxxxx> Thanks for looking. > > Questions below > > > > > diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml > > new file mode 100644 > > index 000000000000..f8fe08d52cb0 > > --- /dev/null > > +++ b/.github/workflows/ci.yml > > @@ -0,0 +1,60 @@ > > +name: Github Action CI > > + > > +on: > > + push: > > + branches: > > + - '*' > > + tags: > > + - 'v*' > > + pull_request: > > + branches: > > + master > > + > > +jobs: > > + build: > > + runs-on: ubuntu-latest > > + > > + steps: > > + - uses: actions/checkout@v2 > > + with: > > + fetch-depth: 0 > > + > > + - name: install > > + run: | > > + sudo apt-get update > > + sudo apt-get install latexmk libalgorithm-diff-perl texlive texlive-latex-extra texlive-humanities graphviz > > + pip3 install --user mako > > + pip3 install --user typing > > + pip3 install --user Sphinx > > Does this need the capital S ? I believe so. This is copy-paste from the TravisCI job. > Can we use apt install instead? Perhaps. I think the issue here was the TravisCI using ancient ubuntu versions and we needed a newer version of Sphinx at some point. GH is the latest LTS, so it should be new enough. > > > + pip3 install --user codespell > > + > > + - name: build pdf > > + run: | > > + make latexpdf > > + git fetch --tags --force # Needed to make git-describe work > > + mv build/latex/devicetree-specification.pdf build/latex/devicetree-specification-$(git describe).pdf > > + - name: build html > > + run: make html > > + - name: build singlehtml > > + run: make singlehtml > > + > > + - name: upload > > + uses: actions/upload-artifact@v2 > > + with: > > + name: artifacts > > + path: | > > + build/latex/devicetree-specification-*.pdf > > + > > + - name: deploy > > + uses: peaceiris/actions-gh-pages@v3 > > + with: > > + github_token: ${{ secrets.GITHUB_TOKEN }} > > What do the spaces instead the {} do? From the docs it looks like this > is a quirk of github? I don't know really. > > + publish_dir: ./build/singlehtml > > + > > + - name: release > > + uses: softprops/action-gh-release@v1 > > + if: startsWith(github.ref, 'refs/tags/') > > So we don't need ${{}} around this one? Evidently not. On both of these, I just follow what the action's docs say to add. It's nice and worrying at the same time to just use other people's actions. Rob