Compare commits
6 commits
5fe023a8c1
...
a2cc36d2f8
Author | SHA1 | Date | |
---|---|---|---|
a2cc36d2f8 | |||
f4e877e2fe | |||
65723753f6 | |||
c88acdb0f4 | |||
b528c58eae | |||
6772f0a5e0 |
7 changed files with 86 additions and 31 deletions
|
@ -1,4 +1,4 @@
|
||||||
name: build and publish
|
name: build pypackage and create release
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
|
@ -9,16 +9,55 @@ on:
|
||||||
branches: [main, master]
|
branches: [main, master]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
release-pypackage:
|
release-github:
|
||||||
uses: actions/workflows/.gitea/workflows/release_pypackage.yml@master
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
HATCH_INDEX_REPO: main
|
||||||
|
HATCH_INDEX_USER: __token__
|
||||||
|
HATCH_INDEX_AUTH: ${{ secrets.PACKAGE_TOKEN }}
|
||||||
|
steps:
|
||||||
|
- name: checkout code
|
||||||
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
repository: main
|
fetch-depth: 0
|
||||||
secrets:
|
|
||||||
username: __token__
|
|
||||||
token: ${{ secrets.PACKAGE_TOKEN }}
|
|
||||||
gh-token: ${{ secrets.GH_TOKEN }}
|
|
||||||
|
|
||||||
update-changelog:
|
- uses: actions/setup-python@v5
|
||||||
uses: actions/workflows/.gitea/workflows/update_changelog.yml@master
|
|
||||||
with:
|
with:
|
||||||
branch: main
|
python-version: "3.11"
|
||||||
|
|
||||||
|
- name: setup go
|
||||||
|
uses: actions/setup-go@v4
|
||||||
|
with:
|
||||||
|
go-version: ">=1.20"
|
||||||
|
|
||||||
|
- name: install hatc h
|
||||||
|
run: pip install -U hatch hatchling
|
||||||
|
|
||||||
|
- name: build package
|
||||||
|
run: hatch build --clean
|
||||||
|
|
||||||
|
- name: install auto-changelog
|
||||||
|
run: npm install auto-changelog
|
||||||
|
|
||||||
|
- name: generate changelog
|
||||||
|
run: >-
|
||||||
|
npx auto-changelog -t keepachangelog
|
||||||
|
--commit-limit 50 --backfill-limit 50
|
||||||
|
--ignore-commit-pattern '[Bb]ump version|[Uu]pdate changelog|[Mm]erge pull request'
|
||||||
|
|
||||||
|
- name: get release notes
|
||||||
|
id: release-notes
|
||||||
|
uses: olofvndrhr/releasenote-gen@v1
|
||||||
|
|
||||||
|
- name: publish package
|
||||||
|
if: gitea.event_name != 'pull_request'
|
||||||
|
run: hatch publish --yes --no-prompt
|
||||||
|
|
||||||
|
- name: create gitea release
|
||||||
|
uses: https://gitea.com/actions/release-action@main
|
||||||
|
if: gitea.event_name != 'pull_request'
|
||||||
|
with:
|
||||||
|
title: ${{ gitea.ref_name }}
|
||||||
|
body: ${{ steps.release-notes.outputs.releasenotes }}
|
||||||
|
files: |-
|
||||||
|
dist/**
|
||||||
|
|
|
@ -9,6 +9,23 @@ on:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
check-code:
|
check-code:
|
||||||
uses: actions/workflows/.gitea/workflows/check_python_hatch.yml@master
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: checkout code
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- uses: actions/setup-python@v5
|
||||||
with:
|
with:
|
||||||
run-tests: true
|
python-version: "3.11"
|
||||||
|
|
||||||
|
- name: install hatch
|
||||||
|
run: pip install -U hatch
|
||||||
|
|
||||||
|
- name: test codestyle
|
||||||
|
run: hatch run lint:style
|
||||||
|
|
||||||
|
- name: test typing
|
||||||
|
run: hatch run lint:typing
|
||||||
|
|
||||||
|
- name: run tests
|
||||||
|
run: hatch run default:test
|
||||||
|
|
20
.github/workflows/build_release.yml
vendored
20
.github/workflows/build_release.yml
vendored
|
@ -1,4 +1,4 @@
|
||||||
name: build and release
|
name: build pypackage and create release
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
|
@ -17,7 +17,7 @@ jobs:
|
||||||
HATCH_INDEX_AUTH: ${{ secrets.PACKAGE_TOKEN }}
|
HATCH_INDEX_AUTH: ${{ secrets.PACKAGE_TOKEN }}
|
||||||
steps:
|
steps:
|
||||||
- name: checkout code
|
- name: checkout code
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v4
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
|
@ -25,12 +25,18 @@ jobs:
|
||||||
with:
|
with:
|
||||||
python-version: "3.11"
|
python-version: "3.11"
|
||||||
|
|
||||||
|
- name: install hatch
|
||||||
|
run: pip install -U hatch hatchling
|
||||||
|
|
||||||
|
- name: build package
|
||||||
|
run: hatch build --clean
|
||||||
|
|
||||||
- name: install auto-changelog
|
- name: install auto-changelog
|
||||||
run: npm install -g auto-changelog
|
run: npm install auto-changelog
|
||||||
|
|
||||||
- name: generate changelog
|
- name: generate changelog
|
||||||
run: >-
|
run: >-
|
||||||
auto-changelog -t keepachangelog
|
npx auto-changelog -t keepachangelog
|
||||||
--commit-limit 50 --backfill-limit 50
|
--commit-limit 50 --backfill-limit 50
|
||||||
--ignore-commit-pattern '[Bb]ump version|[Uu]pdate changelog|[Mm]erge pull request'
|
--ignore-commit-pattern '[Bb]ump version|[Uu]pdate changelog|[Mm]erge pull request'
|
||||||
|
|
||||||
|
@ -38,12 +44,6 @@ jobs:
|
||||||
id: release-notes
|
id: release-notes
|
||||||
uses: olofvndrhr/releasenote-gen@v1
|
uses: olofvndrhr/releasenote-gen@v1
|
||||||
|
|
||||||
- name: install hatch
|
|
||||||
run: pip install -U hatch hatchling
|
|
||||||
|
|
||||||
- name: build package
|
|
||||||
run: hatch build --clean
|
|
||||||
|
|
||||||
- name: create github release
|
- name: create github release
|
||||||
uses: ncipollo/release-action@v1
|
uses: ncipollo/release-action@v1
|
||||||
if: github.event_name != 'pull_request'
|
if: github.event_name != 'pull_request'
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
FROM lscr.io/linuxserver/netbox:3.7.6
|
FROM lscr.io/linuxserver/netbox:4.0.7
|
||||||
|
|
||||||
RUN pip install -U \
|
RUN pip install -U \
|
||||||
wheel \
|
wheel \
|
||||||
setuptools \
|
setuptools \
|
||||||
netbox-plugin-dns==0.22.8
|
netbox-plugin-dns==1.0.4
|
||||||
|
|
|
@ -14,7 +14,7 @@ PLUGINS_CONFIG = {
|
||||||
"zone_nameservers": ["ns1.example.com", "ns2.example.com"],
|
"zone_nameservers": ["ns1.example.com", "ns2.example.com"],
|
||||||
"zone_soa_mname": "ns1.example.com",
|
"zone_soa_mname": "ns1.example.com",
|
||||||
"zone_soa_rname": "admin.example.com",
|
"zone_soa_rname": "admin.example.com",
|
||||||
"tolerate_underscores_in_hostnames": False,
|
"tolerate_underscores_in_labels": False,
|
||||||
"tolerate_leading_underscore_types": [
|
"tolerate_leading_underscore_types": [
|
||||||
"TXT",
|
"TXT",
|
||||||
"SRV",
|
"SRV",
|
||||||
|
|
1
justfile
1
justfile
|
@ -19,7 +19,6 @@ show_system_info:
|
||||||
|
|
||||||
setup:
|
setup:
|
||||||
asdf install
|
asdf install
|
||||||
lefthook install
|
|
||||||
|
|
||||||
create_venv:
|
create_venv:
|
||||||
@echo "creating venv"
|
@echo "creating venv"
|
||||||
|
|
|
@ -69,7 +69,7 @@ validate = ["cd dev && octodns-validate --debug --config-file sync.yml {args}"]
|
||||||
[tool.hatch.envs.lint]
|
[tool.hatch.envs.lint]
|
||||||
python = "3.11"
|
python = "3.11"
|
||||||
detached = true
|
detached = true
|
||||||
dependencies = ["mypy==1.10.0", "ruff==0.4.8"]
|
dependencies = ["mypy==1.11.0", "ruff==0.4.8"]
|
||||||
|
|
||||||
[tool.hatch.envs.lint.scripts]
|
[tool.hatch.envs.lint.scripts]
|
||||||
typing = "mypy --non-interactive --install-types {args:src/octodns_netbox_dns}"
|
typing = "mypy --non-interactive --install-types {args:src/octodns_netbox_dns}"
|
||||||
|
|
Loading…
Reference in a new issue