Skip to content

feat: standardize acceptance tests, clean up docs, and implement test workflows#8

Merged
titanism merged 7 commits intomainfrom
add-provider-tests
Sep 27, 2025
Merged

feat: standardize acceptance tests, clean up docs, and implement test workflows#8
titanism merged 7 commits intomainfrom
add-provider-tests

Conversation

@RoseSecurity
Copy link
Collaborator

Why

  • This modernizes and streamlines the development workflow for the Terraform Forward Email provider by replacing the legacy Makefile with a Taskfile.yml, improving testing and linting infrastructure, and updating documentation and code for best practices and compatibility.

What

Development Workflow Modernization:

  • Removed the old Makefile and introduced a new Taskfile.yml that defines tasks for building, testing, linting, formatting, documentation generation, and installation, making local development and CI setup more consistent and easier to maintain. [1] [2]
  • Updated the README.md to reference Taskfile-based workflows, including installation instructions and new build/test commands, and removed outdated test instructions. [1] [2] [3]
  • Added new tools to Brewfile for local development (go-task, golangci-lint).

Continuous Integration and Testing Improvements:

  • Introduced a comprehensive GitHub Actions workflow (.github/workflows/test.yaml) that builds, tests, checks documentation, and runs acceptance tests across multiple Terraform versions.
  • Refactored provider and data source tests to use the latest terraform-plugin-testing framework, improved acceptance test gating, and added plan restriction checks for smoother CI runs. [1] [2] [3]

Linting and Formatting Enhancements:

  • Overhauled .golangci.yml to enable a broader set of linters, configure linter options, and integrate with the new workflow, raising code quality standards.
  • Updated .editorconfig to clarify line endings and Go tab/indentation settings.

Documentation and Code Quality:

  • Tweaked generated documentation frontmatter for data sources and resources to improve clarity and consistency. [1] [2] [3]
  • Refactored code for Go 1.18+ idioms, replacing interface{} with any and improving doc comments and package headers. [1] [2] [3] [4]

These changes collectively bring the project up to modern standards, making it easier to develop, test, and contribute.

References: [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19]

Replace the Makefile with a Taskfile for improved task management and
developer experience. Update documentation to reference Taskfile usage,
add installation instructions for go-task, and update Homebrew
dependencies. Adjust provider binary build and test instructions. Update
docs metadata and main.go to support debugging and provider address
configuration.
- Introduce `.github/workflows/test.yaml` for CI, running build, docs, and
  acceptance tests on PRs and pushes to main.
- Update Taskfile `sweep` command to use correct sweep target.
- Update docs to use "forwardemail Provider" naming and clarify schema
  section as "Optional".
- Fix provider test to avoid unused variable warning.
- Improve sweeper comment for domain resource tests.
@socket-security
Copy link

socket-security bot commented Sep 26, 2025

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedgithub.com/​hashicorp/​terraform-plugin-sdk/​v2@​v2.35.0 ⏵ v2.37.081 -110010010070
Addedgithub.com/​hashicorp/​terraform-plugin-testing@​v1.13.39210010010070
Updatedgithub.com/​google/​go-cmp@​v0.6.0 ⏵ v0.7.093 +1100100100100

View full report

@RoseSecurity RoseSecurity self-assigned this Sep 26, 2025
@RoseSecurity RoseSecurity added the enhancement New feature or request label Sep 26, 2025
Copy link
Contributor

@titanism titanism left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@titanism titanism merged commit 2564c20 into main Sep 27, 2025
8 checks passed
@titanism titanism deleted the add-provider-tests branch September 27, 2025 11:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants