-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #8 from fourstix/b_new_build
Enable actions on repository
- Loading branch information
Showing
4 changed files
with
200 additions
and
0 deletions.
There are no files selected for viewing
13 changes: 13 additions & 0 deletions
13
.github/PULL_REQUEST_TEMPLATE/adafruit_circuitpython_pr.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# SPDX-FileCopyrightText: 2021 Adafruit Industries | ||
# | ||
# SPDX-License-Identifier: MIT | ||
|
||
Thank you for contributing! Before you submit a pull request, please read the following. | ||
|
||
Make sure any changes you're submitting are in line with the CircuitPython Design Guide, available here: https://circuitpython.readthedocs.io/en/latest/docs/design_guide.html | ||
|
||
If your changes are to documentation, please verify that the documentation builds locally by following the steps found here: https://adafru.it/build-docs | ||
|
||
Before submitting the pull request, make sure you've run Pylint and Black locally on your code. You can do this manually or using pre-commit. Instructions are available here: https://adafru.it/check-your-code | ||
|
||
Please remove all of this text before submitting. Include an explanation or list of changes included in your PR, as well as, if applicable, a link to any related issues. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,80 @@ | ||
# SPDX-FileCopyrightText: 2017 Scott Shawcroft, written for Adafruit Industries | ||
# | ||
# SPDX-License-Identifier: MIT | ||
|
||
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.7 | ||
uses: actions/setup-python@v1 | ||
with: | ||
python-version: 3.7 | ||
- name: Versions | ||
run: | | ||
python3 --version | ||
- name: Checkout Current Repo | ||
uses: actions/checkout@v1 | ||
with: | ||
submodules: true | ||
- name: Checkout tools repo | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: adafruit/actions-ci-circuitpython-libs | ||
path: actions-ci | ||
- name: Install dependencies | ||
# (e.g. - apt-get: gettext, etc; pip: circuitpython-build-tools, requirements.txt; etc.) | ||
run: | | ||
source actions-ci/install.sh | ||
- name: Pip install pylint, Sphinx, pre-commit | ||
run: | | ||
pip install --force-reinstall pylint Sphinx sphinx-rtd-theme pre-commit | ||
- name: Library version | ||
run: git describe --dirty --always --tags | ||
- name: Setup problem matchers | ||
uses: adafruit/circuitpython-action-library-ci-problem-matchers@v1 | ||
- name: Pre-commit hooks | ||
run: | | ||
pre-commit run --all-files | ||
- name: Build assets | ||
run: circuitpython-build-bundles --filename_prefix ${{ steps.repo-name.outputs.repo-name }} --library_location . | ||
- name: Archive bundles | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: bundles | ||
path: ${{ github.workspace }}/bundles/ | ||
- name: Check For docs folder | ||
id: need-docs | ||
run: | | ||
echo ::set-output name=docs::$( find . -wholename './docs' ) | ||
- name: Build docs | ||
if: contains(steps.need-docs.outputs.docs, 'docs') | ||
working-directory: docs | ||
run: sphinx-build -E -W -b html . _build/html | ||
- name: Check For setup.py | ||
id: need-pypi | ||
run: | | ||
echo ::set-output name=setup-py::$( find . -wholename './setup.py' ) | ||
- name: Build Python package | ||
if: contains(steps.need-pypi.outputs.setup-py, 'setup.py') | ||
run: | | ||
pip install --upgrade setuptools wheel twine readme_renderer testresources | ||
python setup.py sdist | ||
python setup.py bdist_wheel --universal | ||
twine check dist/* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# SPDX-FileCopyrightText: 2021 Scott Shawcroft for Adafruit Industries | ||
# | ||
# SPDX-License-Identifier: MIT | ||
|
||
name: Failure help text | ||
|
||
on: | ||
workflow_run: | ||
workflows: ["Build CI"] | ||
types: | ||
- completed | ||
|
||
jobs: | ||
post-help: | ||
runs-on: ubuntu-latest | ||
if: ${{ github.event.workflow_run.conclusion == 'failure' && github.event.workflow_run.event == 'pull_request' }} | ||
steps: | ||
- name: Post comment to help | ||
uses: adafruit/circuitpython-action-library-ci-failed@v1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,88 @@ | ||
# SPDX-FileCopyrightText: 2017 Scott Shawcroft, written for Adafruit Industries | ||
# | ||
# SPDX-License-Identifier: MIT | ||
|
||
name: Release Actions | ||
|
||
on: | ||
release: | ||
types: [published] | ||
|
||
jobs: | ||
upload-release-assets: | ||
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 | ||
- name: Checkout Current Repo | ||
uses: actions/checkout@v1 | ||
with: | ||
submodules: true | ||
- name: Checkout tools repo | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: adafruit/actions-ci-circuitpython-libs | ||
path: actions-ci | ||
- name: Install deps | ||
run: | | ||
source actions-ci/install.sh | ||
- name: Build assets | ||
run: circuitpython-build-bundles --filename_prefix ${{ steps.repo-name.outputs.repo-name }} --library_location . | ||
- name: Upload Release Assets | ||
# the 'official' actions version does not yet support dynamically | ||
# supplying asset names to upload. @csexton's version chosen based on | ||
# discussion in the issue below, as its the simplest to implement and | ||
# allows for selecting files with a pattern. | ||
# https://github.com/actions/upload-release-asset/issues/4 | ||
#uses: actions/[email protected] | ||
uses: csexton/release-asset-action@master | ||
with: | ||
pattern: "bundles/*" | ||
github-token: ${{ secrets.GITHUB_TOKEN }} | ||
|
||
upload-pypi: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v1 | ||
- name: Check For setup.py | ||
id: need-pypi | ||
run: | | ||
echo ::set-output name=setup-py::$( find . -wholename './setup.py' ) | ||
- name: Set up Python | ||
if: contains(steps.need-pypi.outputs.setup-py, 'setup.py') | ||
uses: actions/setup-python@v1 | ||
with: | ||
python-version: '3.x' | ||
- name: Install dependencies | ||
if: contains(steps.need-pypi.outputs.setup-py, 'setup.py') | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install setuptools wheel twine | ||
- name: Build and publish | ||
if: contains(steps.need-pypi.outputs.setup-py, 'setup.py') | ||
env: | ||
TWINE_USERNAME: ${{ secrets.pypi_username }} | ||
TWINE_PASSWORD: ${{ secrets.pypi_password }} | ||
run: | | ||
for file in $(find -not -path "./.*" -not -path "./docs*" -name "*.py"); do | ||
sed -i -e "s/0.0.0-auto.0/${{github.event.release.tag_name}}/" $file; | ||
done; | ||
python setup.py sdist | ||
twine upload dist/* |