Skip to content

Commit

Permalink
Bootstrapping mkdocs-ansible
Browse files Browse the repository at this point in the history
  • Loading branch information
ssbarnea committed Mar 10, 2023
0 parents commit c36180e
Show file tree
Hide file tree
Showing 27 changed files with 918 additions and 0 deletions.
48 changes: 48 additions & 0 deletions .config/dictionary.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
PYTHONBREAKPOINT
PYTHONIOENCODING
PYTHONPYCACHEPREFIX
REQPASS
Roboto
TOXENV
ansiblelint
arithmatex
autofix
autohide
autoupdate
betterem
cairosvg
clib
codecov
codenotify
codespell
commitlint
devel
dists
docstrings
fontawesome
htmlproofer
inlinehilite
linenums
magiclink
minversion
mkdocs
mkdocstrings
mypy
notest
outdir
pipdeptree
pycontribs
pylint
pymdown
pymdownx
pypa
pyproject
pyupgrade
ruamel
setuptools
smartsymbols
sourcegraph
squidfunk
superfences
tasklist
tomli
Empty file added .config/requirements-test.txt
Empty file.
13 changes: 13 additions & 0 deletions .config/requirements.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
cairosvg>=2.6.0
markdown-exec>=1.3.0
mkdocs-gen-files>=0.4.0
mkdocs-htmlproofer-plugin>=0.10.2
mkdocs-material-extensions>=1.1.1
mkdocs-material>=9.0.13
mkdocs-minify-plugin
mkdocs>=1.4.2
mkdocstrings-python>=0.8.3
mkdocstrings>=0.20.0
pillow>=9.4.0
pipdeptree>=2.4.0
pymdown-extensions>=9.9.2
55 changes: 55 additions & 0 deletions .config/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
#
# This file is autogenerated by pip-compile with Python 3.9
# by the following command:
#
# pip-compile --extra=docs --extra=test --no-annotate --output-file=.config/requirements.txt --resolver=backtracking --strip-extras --unsafe-package=ruamel-yaml-clib pyproject.toml
#
beautifulsoup4==4.11.2
cairocffi==1.4.0
cairosvg==2.6.0
certifi==2022.12.7
cffi==1.15.1
charset-normalizer==3.1.0
click==8.1.3
colorama==0.4.6
csscompressor==0.9.5
cssselect2==0.7.0
defusedxml==0.7.1
ghp-import==2.1.0
griffe==0.25.5
htmlmin==0.1.12
idna==3.4
importlib-metadata==6.0.0
jinja2==3.1.2
jsmin==3.0.1
markdown==3.3.7
markdown-exec==1.3.0
markupsafe==2.1.2
mergedeep==1.3.4
mkdocs==1.4.2
mkdocs-autorefs==0.4.1
mkdocs-gen-files==0.4.0
mkdocs-htmlproofer-plugin==0.10.3
mkdocs-material==9.1.1
mkdocs-material-extensions==1.1.1
mkdocs-minify-plugin==0.6.2
mkdocstrings==0.20.0
mkdocstrings-python==0.8.3
packaging==23.0
pillow==9.4.0
pipdeptree==2.5.2
pycparser==2.21
pygments==2.14.0
pymdown-extensions==9.10
python-dateutil==2.8.2
pyyaml==6.0
pyyaml-env-tag==0.1
regex==2022.10.31
requests==2.28.2
six==1.16.0
soupsieve==2.4
tinycss2==1.2.1
urllib3==1.26.14
watchdog==2.3.1
webencodings==0.5.1
zipp==3.15.0
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @ansible/devtools
19 changes: 19 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
version: 2
updates:
- package-ecosystem: pip
directory: /.config/
schedule:
day: sunday
interval: weekly
labels:
- dependabot
- skip-changelog
versioning-strategy: lockfile-only
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: daily
labels:
- dependabot
- skip-changelog
3 changes: 3 additions & 0 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
# see https://github.com/ansible/devtools
_extends: ansible/devtools
10 changes: 10 additions & 0 deletions .github/workflows/ack.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
# See https://github.com/ansible/devtools/blob/main/.github/workflows/ack.yml
name: ack
on:
pull_request_target:
types: [opened, labeled, unlabeled, synchronize]

jobs:
ack:
uses: ansible/devtools/.github/workflows/ack.yml@main
13 changes: 13 additions & 0 deletions .github/workflows/push.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
# See https://github.com/ansible/devtools/blob/main/.github/workflows/push.yml
name: push
on:
push:
branches:
- main
- "releases/**"
- "stable/**"

jobs:
ack:
uses: ansible/devtools/.github/workflows/push.yml@main
43 changes: 43 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
# cspell:ignore mislav
name: release

on:
release:
types: [published]

jobs:
pypi:
name: Publish to PyPI registry
environment: release
runs-on: ubuntu-22.04

env:
FORCE_COLOR: 1
PY_COLORS: 1
TOXENV: pkg

steps:
- name: Switch to using Python 3.9 by default
uses: actions/setup-python@v4
with:
python-version: 3.9

- name: Install tox
run: python3 -m pip install --user "tox>=4.0.0"

- name: Check out src from Git
uses: actions/checkout@v3
with:
fetch-depth: 0 # needed by setuptools-scm
submodules: true

- name: Build dists
run: python -m tox

- name: Publish to pypi.org
if: >- # "create" workflows run separately from "push" & "pull_request"
github.event_name == 'release'
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.pypi_password }}
151 changes: 151 additions & 0 deletions .github/workflows/tox.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@
---
name: tox

on:
push: # only publishes pushes to the main branch to TestPyPI
branches: # any integration branch but not tag
- "main"
pull_request:
branches:
- "main"

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true

env:
FORCE_COLOR: 1
PY_COLORS: 1

jobs:
pre:
name: pre
runs-on: ubuntu-22.04
outputs:
matrix: ${{ steps.generate_matrix.outputs.matrix }}
steps:
- name: Determine matrix
id: generate_matrix
uses: coactions/dynamic-matrix@v1
with:
min_python: "3.9"
max_python: "3.11"
other_names: |
lint
docs
# platforms: linux,macos

build:
name: ${{ matrix.name }}
runs-on: ${{ matrix.os || 'ubuntu-22.04' }}
needs: pre
defaults:
run:
shell: ${{ matrix.shell || 'bash'}}
strategy:
fail-fast: false
matrix: ${{ fromJson(needs.pre.outputs.matrix) }}
env:
PYTEST_REQPASS: 0
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0 # needed by setuptools-scm
submodules: true

- name: Set pre-commit cache
uses: actions/cache@v3
if: ${{ matrix.passed_name == 'lint' }}
with:
path: |
~/.cache/pre-commit
key: pre-commit-${{ matrix.name || matrix.passed_name }}-${{ hashFiles('.pre-commit-config.yaml') }}

- name: Set galaxy cache
uses: actions/cache@v3
if: ${{ startsWith(matrix.passed_name, 'py') }}
with:
path: |
examples/playbooks/collections/*.tar.gz
examples/playbooks/collections/ansible_collections
key: galaxy-${{ hashFiles('examples/playbooks/collections/requirements.yml') }}

- name: Set up Python ${{ matrix.python_version || '3.9' }}
uses: actions/setup-python@v4
with:
cache: pip
python-version: ${{ matrix.python_version || '3.9' }}

- name: Install tox
run: |
python3 -m pip install --upgrade pip
python3 -m pip install --upgrade "tox>=4.0.0"
- name: Log installed dists
run: python3 -m pip freeze --all

- name: Initialize tox envs ${{ matrix.passed_name }}
run: python3 -m tox --notest --skip-missing-interpreters false -vv -e ${{ matrix.passed_name }}
timeout-minutes: 5 # average is under 1, but macos can be over 3

# sequential run improves browsing experience (almost no speed impact)
- name: tox -e ${{ matrix.passed_name }}
run: python3 -m tox -e ${{ matrix.passed_name }}

- name: Combine coverage data
if: ${{ startsWith(matrix.passed_name, 'py') }}
# produce a single .coverage file at repo root
run: tox -e coverage

- name: Upload coverage data
if: ${{ startsWith(matrix.passed_name, 'py') }}
uses: codecov/codecov-action@v3
with:
name: ${{ matrix.passed_name }}
fail_ci_if_error: false # see https://github.com/codecov/codecov-action/issues/598
token: ${{ secrets.CODECOV_TOKEN }}
verbose: true # optional (default = false)

- name: Archive logs
uses: actions/upload-artifact@v3
with:
name: logs.zip
path: .tox/**/log/
# https://github.com/actions/upload-artifact/issues/123
continue-on-error: true

- name: Report failure if git reports dirty status
run: |
if [[ -n $(git status -s) ]]; then
# shellcheck disable=SC2016
echo -n '::error file=git-status::'
printf '### Failed as git reported modified and/or untracked files\n```\n%s\n```\n' "$(git status -s)" | tee -a "$GITHUB_STEP_SUMMARY"
exit 99
fi
# https://github.com/actions/toolkit/issues/193

check: # This job does nothing and is only used for the branch protection
if: always()
permissions:
pull-requests: write # allow codenotify to comment on pull-request

needs:
- build

runs-on: ubuntu-latest

steps:
- name: Decide whether the needed jobs succeeded or failed
uses: re-actors/alls-green@release/v1
with:
jobs: ${{ toJSON(needs) }}

- name: Check out src from Git
uses: actions/checkout@v3

- name: Notify repository owners about lint change affecting them
uses: sourcegraph/codenotify@v0.6.4
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# https://github.com/sourcegraph/codenotify/issues/19
continue-on-error: true
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
**/*.egg-info
.DS_Store
.tox
__pycache__
build/
dist
site
src/mkdocs_ansible/_version.py
Loading

0 comments on commit c36180e

Please sign in to comment.