diff options
author | eine <eine@users.noreply.github.com> | 2020-07-26 07:16:48 +0200 |
---|---|---|
committer | tgingold <tgingold@users.noreply.github.com> | 2021-01-13 07:49:06 +0100 |
commit | b510f0ea03bc88cbf375ce13c29e97941b561a72 (patch) | |
tree | 5e3522df4fd9b971a906c63fc9bad8e563b85edf | |
parent | a54b2eba5382ec980b1eaf785ed529704fb98cf8 (diff) | |
download | ghdl-b510f0ea03bc88cbf375ce13c29e97941b561a72.tar.gz ghdl-b510f0ea03bc88cbf375ce13c29e97941b561a72.tar.bz2 ghdl-b510f0ea03bc88cbf375ce13c29e97941b561a72.zip |
ci: deprecate Travis in favour of GitHub Actions
-rw-r--r-- | .github/workflows/doc.yml | 48 | ||||
-rw-r--r-- | .github/workflows/push.yml | 90 | ||||
-rw-r--r-- | .travis.yml | 63 | ||||
-rw-r--r-- | README.md | 17 | ||||
-rw-r--r-- | appveyor.yml | 16 | ||||
-rwxr-xr-x | scripts/macosx/install-ada.sh | 1 | ||||
-rwxr-xr-x | scripts/man.sh | 15 |
7 files changed, 89 insertions, 161 deletions
diff --git a/.github/workflows/doc.yml b/.github/workflows/doc.yml deleted file mode 100644 index 3e6ef9104..000000000 --- a/.github/workflows/doc.yml +++ /dev/null @@ -1,48 +0,0 @@ -name: 'doc' - -on: - push: - -jobs: - linux: - runs-on: ubuntu-latest - name: '📓 Docs' - steps: - - - name: '🧰 Checkout' - uses: actions/checkout@v2 - - - name: Build ghdl/doc - run: | - docker build -t ghdl/doc - <<-EOF - FROM ghdl/vunit:llvm - ENV PYTHONPATH=/src/pyGHDL - RUN apt update -qq && apt install -y gnat-gps graphviz \ - && ln -s /usr/bin/pip3 /usr/bin/pip - EOF - - - name: Run gnatdoc - run: | - cat > run.sh <<-EOF - #!/usr/bin/env sh - ./configure - make - gnatdoc -P./ghdl - mkdir public - mv gnatdoc public - EOF - chmod +x run.sh - docker run --rm -v $(pwd):/src -w /src ghdl/doc ./run.sh - - - name: '📓 BuildTheDocs (BTD)' - uses: buildthedocs/btd@v0 - with: - token: ${{ github.token }} - - - name: '📤 Upload artifact: HTML and LaTeX' - uses: actions/upload-artifact@v2 - with: - name: doc - path: | - doc/_build/html - doc/_build/latex diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml index 53193dfd5..ec2d10431 100644 --- a/.github/workflows/push.yml +++ b/.github/workflows/push.yml @@ -3,6 +3,7 @@ name: 'push' on: push: pull_request: + workflow_dispatch: env: CI: true @@ -11,6 +12,64 @@ env: jobs: # +# Doc +# + + doc: + runs-on: ubuntu-latest + name: '📓 Docs' + steps: + + - name: '🧰 Checkout' + uses: actions/checkout@v2 + + - name: Build ghdl/doc + run: | + docker build -t ghdl/doc - <<-EOF + FROM ghdl/vunit:llvm + ENV PYTHONPATH=/src/pyGHDL + RUN apt update -qq && apt install -y gnat-gps graphviz \ + && ln -s /usr/bin/pip3 /usr/bin/pip + EOF + + - name: Run gnatdoc + run: | + cat > run.sh <<-EOF + #!/usr/bin/env sh + ./configure + make + gnatdoc -P./ghdl + mkdir public + mv gnatdoc public + EOF + chmod +x run.sh + docker run --rm -v $(pwd):/src -w /src ghdl/doc ./run.sh + + - name: '📓 BuildTheDocs (BTD)' + if: github.event_name != 'pull_request' + uses: buildthedocs/btd@v0 + with: + token: ${{ github.token }} + + #- run: nroff -man doc/_build/man/ghdl.1 + + - name: '📤 Upload artifact: HTML and LaTeX' + if: github.event_name != 'pull_request' + uses: actions/upload-artifact@v2 + with: + name: doc + path: | + doc/_build/html + doc/_build/latex + doc/_build/man + + - name: '📤 Upload artifact: ghdl.1' + if: github.event_name != 'pull_request' + uses: actions/upload-artifact@v2 + with: + path: doc/_build/man/ghdl.1 + +# # pyGHDL # @@ -109,10 +168,16 @@ jobs: run: | PATH=$PWD/gnat/bin:$PATH ./scripts/ci-run.sh -c + mv ghdl-*.tgz ghdl-osx-mcode.tgz env: TASK: macosx+mcode GITHUB_OS: ${{ runner.os }} + - name: '📤 Upload artifact: package' + uses: actions/upload-artifact@v2 + with: + path: ghdl-osx-mcode.tgz + # # Windows Build # @@ -231,24 +296,37 @@ jobs: run: GHDL=ghdl ./testsuite/testsuite.sh ${{ matrix.suite }} # -# NIGHTLY +# Release # - nightly: - if: github.ref == 'refs/heads/master' && github.event_name != 'pull_request' - needs: [ lin, win-test ] + Release: + if: github.event_name != 'pull_request' && (github.ref == 'refs/heads/master' || contains(github.ref, 'refs/tags/')) + needs: [ doc, lin, osx, win-test ] runs-on: ubuntu-latest - name: '📦 Nightly' + name: '📦 Release' steps: - name: '📥 Download artifacts' + if: "!contains(github.ref, 'refs/tags/')" uses: actions/download-artifact@v2 + # Do not upload assets to tagged releases + - name: Set list of files for uploading + id: files + run: | + case '${{ github.ref }}' in + 'refs/tags/'*) _list='none' ;; + *) _list='artifact/*' ;; + esac + echo "::set-output name=list::${_list}" + + # Tagged: create a pre-release or a release (semver) + # Untagged: update the assets of pre-release 'nightly' - uses: eine/tip@master with: token: ${{ secrets.GITHUB_TOKEN }} tag: 'nightly' - files: artifact/* + files: ${{ steps.files.outputs.list }} - run: | curl -X POST https://api.github.com/repos/ghdl/docker/dispatches \ diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 8ab8fbaf3..000000000 --- a/.travis.yml +++ /dev/null @@ -1,63 +0,0 @@ -branches: - except: - - nightly - -os: linux -dist: xenial -services: docker -language: minimal -install: skip -script: ./scripts/ci-run.sh -c $TARGS - -# For each linux build, a different job/instance (with the constraints -# above) is executed in parallel in stage 'test'. -env: - matrix: - - TASK=buster+mcode - - TASK=buster+mcode - TARGS="--gpl --no-synth" - - TASK=ubuntu20+mcode - - TASK=ubuntu20+llvm-10 - - TASK=fedora33+mcode - - TASK=fedora33+llvm - -deploy: - - &dep - provider: releases - skip_cleanup: true - api_key: - secure: ji6LXOmD5V2N+ELHZr4oJsmxPhedk+8W6jfCqQdEbewQ42N+fKOq3lgqJni7ZdfpZaulB9OHPTApv3bwOjXjtN9rfBGmq//U9CwvzHmUeomdQv6WQOVevaWSXl3DNL9fk3yKynyFrsv4pvr45L8GIjaHLggKcYhNFPJ2rrnJlDoFT9MqQNpmP7Bg/LnwVQiv+ZDPkLlMWQzrXzLamdQILARPQka+kCdXl/sHH6OKvLgRvu9yvyXYSSfbyAHP+THISS5gDciizSBeWGlU75kgj/N+mkV+8NvtTTfEIgG8y49WJz6aBooTmRzk/jZW1dKMbDR6c5bpTmRvMZSzeSBuAR6WLhr6HevgCPi/1fX1y3pkVSrgBUF5KcxPgWCZp0I05QjaJOdvQDl1hH4TlVwpT18lM2+cWrui9fS7spnk/AuNKX882C5QWWRy28lIPasCVnwfeKX8a9KAwY9OqVOenoLC1yx7NJOGfH1bjuSYYxyR4XgLiGTHKALAuknCyD9QL0o378IwqxHMcsN0Gsd+GndMu0/b8GvSqfzDpV1XknqabQFwkZLs+Yydw0snfBUzXw9TfOk78IiPYEgXAxsQKBAkK7qvO36HIxLlSQXglXU1D4IDtQYDUel6vKll4pgu0WMxStQCbj51yDVJKvRhzwiBNC6Pwgzt2JTrpwM/T/U= - file: "ghdl-*.tgz" - file_glob: true - on: - repo: ghdl/ghdl - all_branches: true - tags: true - -jobs: - include: - # One additional job is described in stage 'test' for the macos build. - # The constraints above are used, except explicitly overriden. - - &osx - os: osx - language: c - osx_image: xcode10 - env: TASK=macosx+mcode - cache: - directories: - - gnat - install: ./scripts/macosx/install-ada.sh - before_script: PATH=$PWD/gnat/bin:$PATH - addons: - homebrew: - packages: - - p7zip - update: true - # Optionally, more macos jobs can be added. See list of available versions at https://docs.travis-ci.com/user/reference/osx/#macos-version -# - <<: *osx -# osx_image: xcode9.4 - - env: TASK="man" - script: ./scripts/man.sh - deploy: - - <<: *dep - file: "doc/_build/man/ghdl.1" @@ -1,4 +1,8 @@ <p align="center"> + <img src="./doc/_static/logo.png"/> +</p> + +<p align="center"> <a title="Documentation" href="https://ghdl.github.io/ghdl"><img src="https://img.shields.io/website.svg?label=ghdl.github.io%2Fghdl&longCache=true&style=flat-square&url=http%3A%2F%2Fghdl.github.io%2Fghdl%2Findex.html"></a><!-- --> <a title="Join the chat at https://gitter.im/ghdl1/Lobby" href="https://gitter.im/ghdl1/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"><img src="https://img.shields.io/badge/chat-on%20gitter-4db797.svg?longCache=true&style=flat-square&logo=gitter&logoColor=e8ecef"></a><!-- @@ -6,22 +10,11 @@ <a title="Docker Images" href="https://github.com/ghdl/docker"><img src="https://img.shields.io/docker/pulls/ghdl/ghdl.svg?logo=docker&logoColor=e8ecef&style=flat-square&label=docker"></a><!-- --> <a title="Releases" href="https://github.com/ghdl/ghdl/releases"><img src="https://img.shields.io/github/commits-since/ghdl/ghdl/latest.svg?longCache=true&style=flat-square"></a> -</p> - -<p align="center"> - <img src="./doc/_static/logo.png"/> -</p> - -<p align="center"> <a title="CII Best Practices" href="https://bestpractices.coreinfrastructure.org/en/projects/3157"><img src="https://img.shields.io/cii/percentage/3157??longCache=true&style=flat-square"></a><!-- --> <a title="'push' workflow Status" href="https://github.com/ghdl/ghdl/actions?query=workflow%3Apush"><img alt="'push' workflow Status" src="https://img.shields.io/github/workflow/status/ghdl/ghdl/push?longCache=true&style=flat-square&label=push&logo=github%20actions&logoColor=fff"></a><!-- --> - <a title="'doc' workflow Status" href="https://github.com/ghdl/ghdl/actions?query=workflow%3Adoc"><img alt="'doc' workflow Status" src="https://img.shields.io/github/workflow/status/ghdl/ghdl/doc?longCache=true&style=flat-square&label=doc&logo=github%20actions&logoColor=fff"></a><!-- - --> - <a title="Linux/Mac boxes at Travis-CI" href="https://travis-ci.org/ghdl/ghdl/branches"><img src="https://img.shields.io/travis/ghdl/ghdl/master.svg?longCache=true&style=flat-square&logo=travis-ci&logoColor=e8ecef"></a><!-- - --> - <a title="AppVeyor branch" href="https://ci.appveyor.com/project/tgingold/ghdl-psgys/history"><img src="https://img.shields.io/appveyor/ci/tgingold/ghdl-psgys/master.svg?logo=appveyor&logoColor=e8ecef&style=flat-square"></a> + <a title="AppVeyor" href="https://ci.appveyor.com/project/tgingold/ghdl-psgys/history"><img src="https://img.shields.io/appveyor/ci/tgingold/ghdl-psgys/master.svg?logo=appveyor&logoColor=e8ecef&style=flat-square"></a> </p> This directory contains the sources of GHDL, the open-source analyzer, compiler, simulator and (experimental) synthesizer for [VHDL](https://en.wikipedia.org/wiki/VHDL), a Hardware Description Language ([HDL](https://en.wikipedia.org/wiki/Hardware_description_language)). GHDL is not an interpreter: it allows you to analyse and elaborate sources to generate machine code from your design. Native program execution is the only way for high speed simulation. diff --git a/appveyor.yml b/appveyor.yml index f3ffa1d3b..60662c348 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -52,19 +52,3 @@ build_script: # test scripts to run test_script: - ps: .\scripts\windows\appveyor\test.ps1 - - -# ============================================================================= -# Deployment configuration -# ============================================================================= -deploy: - - provider: GitHub - release: $(APPVEYOR_REPO_TAG_NAME) - description: 'Release' - draft: true - prerelease: false - artifact: /.*\.zip/ - on: - appveyor_repo_tag: true - auth_token: - secure: Qli1B9/I6B1uTMeyGolw8N/zh/PRhLdT8fjUUTcd4Vp14UQki+YTjxKjAe+65Oqv diff --git a/scripts/macosx/install-ada.sh b/scripts/macosx/install-ada.sh index 760be908b..2e2862824 100755 --- a/scripts/macosx/install-ada.sh +++ b/scripts/macosx/install-ada.sh @@ -7,7 +7,6 @@ if [ -e gnat/etc/install_ok ] && [ "x$(cat gnat/etc/install_ok)" = "x2019" ]; th exit 0 fi -echo "Download and install gnat-gpl" set -x # Remove old gnat directory diff --git a/scripts/man.sh b/scripts/man.sh deleted file mode 100755 index 4c5316ddb..000000000 --- a/scripts/man.sh +++ /dev/null @@ -1,15 +0,0 @@ -#! /bin/bash - -cd $(dirname $0)/.. - -rm -rf doc/_build/man/* - -set -e - -docker run --rm -it \ - -v /$(pwd):/src \ - -w //src/doc \ - btdi/sphinx:featured \ - sh -c "sphinx-build -T -b man . ./_build/man" - -nroff -man doc/_build/man/ghdl.1 |