diff --git a/.github/dependabot.yml b/.github/dependabot.yml deleted file mode 100644 index 3cbe31c..0000000 --- a/.github/dependabot.yml +++ /dev/null @@ -1,13 +0,0 @@ -# Copyright IBM Corp. 2019, 2026 -# "SPDX-License-Identifier: MPL-2.0" - -version: 2 -updates: - - package-ecosystem: "github-actions" - directory: "/" - schedule: - interval: "daily" - - package-ecosystem: "gomod" - directory: "/" - schedule: - interval: "daily" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 24ce001..b98d848 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -64,10 +64,6 @@ jobs: gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }} passphrase: ${{ secrets.GPG_PASSPHRASE }} - - name: Generate release notes - run: | - sed -n -e "1{/# v/d;}" -e "2{/^$/d;}" -e "/# $(git describe --abbrev=0 --exclude="$(git describe --abbrev=0 --match='v*.*.*' --tags)" --match='v*.*.*' --tags)/q;p" CHANGELOG.md > RELEASE-NOTES.md - - name: Check configuration uses: goreleaser/goreleaser-action@ec59f474b9834571250b370d4735c50f8e2d1e29 # v7.0.0 with: @@ -84,4 +80,4 @@ jobs: GPG_FINGERPRINT: ${{ steps.import_gpg.outputs.fingerprint }} RELEASE_TAG: ${{ env.RELEASE_TAG }} with: - args: release --release-notes RELEASE-NOTES.md --clean + args: release --clean diff --git a/.github/workflows/token_expire.yml b/.github/workflows/token_expire.yml deleted file mode 100644 index 7015b82..0000000 --- a/.github/workflows/token_expire.yml +++ /dev/null @@ -1,37 +0,0 @@ -# Copyright IBM Corp. 2019, 2026 -# "SPDX-License-Identifier: MPL-2.0" - -name: Token Expiration - -on: - schedule: - - cron: '0 0 * * *' # Runs daily at midnight - workflow_dispatch: # Allows manual triggering of the workflow - -jobs: - check_token_expiration: - name: Check - runs-on: ubuntu-latest - steps: - - name: Check token expiration - run: | - # Set the expiration date of the token - TOKEN_EXPIRATION_DATE="2025-12-01" - - # Get the current date - CURRENT_DATE=$(date -u +"%Y-%m-%d") - - # Calculate the difference in days between the current date and the expiration date - DAYS_LEFT=$(( ( $(date -ud "$TOKEN_EXPIRATION_DATE" +'%s') - $(date -ud "$CURRENT_DATE" +'%s') )/(60*60*24) )) - - # If the token expires in less than 7 days, create an issue - if [ "$DAYS_LEFT" -le 7 ]; then - echo "Token expires in $DAYS_LEFT days. Creating an issue..." - ISSUE_TITLE="YAKBOT_GITHUB_TOKEN Expiration Alert" - ISSUE_BODY="The YAKBOT_GITHUB_TOKEN will expire on $TOKEN_EXPIRATION_DATE. Please renew the token." - curl -X POST -H "Authorization: token ${{ secrets.BEEFY_TOKEN }}" \ - -d "{\"title\":\"$ISSUE_TITLE\",\"body\":\"$ISSUE_BODY\"}" \ - https://api.github.com/repos/${{ github.repository }}/issues - else - echo "Token is valid for $DAYS_LEFT more days." - fi diff --git a/AGENTS.md b/AGENTS.md index 42e7fb2..8c8aba3 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -2,6 +2,13 @@ +> ## ⚠️ Deprecated +> +> `tfproviderdocs` is deprecated and no longer maintained. All functionality +> has been superseded by [swissshepherd](https://github.com/YakDriver/swissshepherd). +> New work should target swissshepherd; this repository will receive no +> further releases or bug fixes. + ## Project Purpose & Usage `tfproviderdocs` operates as a CI/CD safeguard for Terraform providers, validating user-facing docs for required structure, headings, and metadata. When supplied a provider schema in JSON (via `terraform providers schema -json`), it cross-references expected data sources and resources so engineers do not hand-maintain checklists. Providers such as AWS invoke the tool within release pipelines, for example: diff --git a/CHANGELOG.md b/CHANGELOG.md index 75a0354..07f59d4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,12 @@ # CHANGELOG +## Deprecated — 2026-06-11 + +`tfproviderdocs` is deprecated and no longer maintained. All functionality has +been superseded by [swissshepherd](https://github.com/YakDriver/swissshepherd). +No further releases or bug fixes will be made to this project. Please migrate +to swissshepherd. + +--- + See the [release notes](https://github.com/YakDriver/tfproviderdocs/releases) for each release. diff --git a/README.md b/README.md index ed4d08d..8294edb 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,13 @@ +> ## ⚠️ Deprecated +> +> **`tfproviderdocs` is deprecated and no longer maintained.** All functionality +> has been superseded by [**swissshepherd**](https://github.com/YakDriver/swissshepherd). +> Please migrate to swissshepherd; this repository will receive no further +> releases or bug fixes. + A documentation tool for [Terraform Provider](https://www.terraform.io/docs/providers/index.html) code. ## Install diff --git a/check/contents/doc.go b/check/contents/doc.go new file mode 100644 index 0000000..2c57402 --- /dev/null +++ b/check/contents/doc.go @@ -0,0 +1,11 @@ +// Copyright IBM Corp. 2019, 2026 +// SPDX-License-Identifier: MPL-2.0 + +// Package contents validates the body of individual Terraform Provider +// documentation files: headings, sections, schema attribute lists, and +// related content rules. +// +// Deprecated: tfproviderdocs is no longer maintained. All functionality has +// been superseded by github.com/YakDriver/swissshepherd. Please migrate: +// https://github.com/YakDriver/swissshepherd +package contents diff --git a/check/doc.go b/check/doc.go new file mode 100644 index 0000000..574cd65 --- /dev/null +++ b/check/doc.go @@ -0,0 +1,10 @@ +// Copyright IBM Corp. 2019, 2026 +// SPDX-License-Identifier: MPL-2.0 + +// Package check verifies the structure and contents of Terraform Provider +// documentation directories and files. +// +// Deprecated: tfproviderdocs is no longer maintained. All functionality has +// been superseded by github.com/YakDriver/swissshepherd. Please migrate: +// https://github.com/YakDriver/swissshepherd +package check diff --git a/command/doc.go b/command/doc.go new file mode 100644 index 0000000..43639f0 --- /dev/null +++ b/command/doc.go @@ -0,0 +1,10 @@ +// Copyright IBM Corp. 2019, 2026 +// SPDX-License-Identifier: MPL-2.0 + +// Package command implements the tfproviderdocs CLI subcommands (check and +// version) consumed by main. +// +// Deprecated: tfproviderdocs is no longer maintained. All functionality has +// been superseded by github.com/YakDriver/swissshepherd. Please migrate: +// https://github.com/YakDriver/swissshepherd +package command diff --git a/go.mod b/go.mod index 7104eda..43293ef 100644 --- a/go.mod +++ b/go.mod @@ -1,3 +1,6 @@ +// Deprecated: tfproviderdocs is no longer maintained. All functionality has +// been superseded by github.com/YakDriver/swissshepherd. Please migrate: +// https://github.com/YakDriver/swissshepherd module github.com/YakDriver/tfproviderdocs go 1.25.5 diff --git a/main.go b/main.go index 5cb8187..4c12e85 100644 --- a/main.go +++ b/main.go @@ -1,10 +1,16 @@ // Copyright IBM Corp. 2019, 2026 // SPDX-License-Identifier: MPL-2.0 +// Command tfproviderdocs validates Terraform provider documentation. +// +// Deprecated: tfproviderdocs is no longer maintained. All functionality has +// been superseded by swissshepherd. Please migrate to: +// https://github.com/YakDriver/swissshepherd package main import ( "fmt" + "io" "os" "github.com/YakDriver/tfproviderdocs/command" @@ -18,6 +24,8 @@ const ( ) func main() { + printDeprecationNotice(os.Stderr) + ui := &cli.ColoredUi{ ErrorColor: cli.UiColorRed, WarnColor: cli.UiColorYellow, @@ -45,3 +53,14 @@ func main() { os.Exit(exitStatus) } + +// printDeprecationNotice writes a deprecation banner to the given writer +// (typically os.Stderr) so it does not pollute stdout consumed by CI parsers. +func printDeprecationNotice(w io.Writer) { + fmt.Fprintln(w, "============================================================") + fmt.Fprintln(w, "DEPRECATED: tfproviderdocs is no longer maintained.") + fmt.Fprintln(w, "All functionality has been superseded by swissshepherd:") + fmt.Fprintln(w, " https://github.com/YakDriver/swissshepherd") + fmt.Fprintln(w, "Please migrate. This tool will receive no further releases.") + fmt.Fprintln(w, "============================================================") +} diff --git a/markdown/doc.go b/markdown/doc.go new file mode 100644 index 0000000..71e8917 --- /dev/null +++ b/markdown/doc.go @@ -0,0 +1,10 @@ +// Copyright IBM Corp. 2019, 2026 +// SPDX-License-Identifier: MPL-2.0 + +// Package markdown provides Markdown parsing helpers (built on goldmark) +// used by the documentation checks. +// +// Deprecated: tfproviderdocs is no longer maintained. All functionality has +// been superseded by github.com/YakDriver/swissshepherd. Please migrate: +// https://github.com/YakDriver/swissshepherd +package markdown diff --git a/version/doc.go b/version/doc.go new file mode 100644 index 0000000..577387e --- /dev/null +++ b/version/doc.go @@ -0,0 +1,9 @@ +// Copyright IBM Corp. 2019, 2026 +// SPDX-License-Identifier: MPL-2.0 + +// Package version exposes build-time version information for tfproviderdocs. +// +// Deprecated: tfproviderdocs is no longer maintained. All functionality has +// been superseded by github.com/YakDriver/swissshepherd. Please migrate: +// https://github.com/YakDriver/swissshepherd +package version diff --git a/version/version.go b/version/version.go index 97decf1..fbb231b 100644 --- a/version/version.go +++ b/version/version.go @@ -14,7 +14,7 @@ var ( GitDescribe string // The main version number that is being run at the moment. - Version = "0.25.0" + Version = "0.26.0" // A pre-release marker for the version. If this is "" (empty string) // then it means that it is a final release. Otherwise, this is a pre-release