stackup
stackup copied to clipboard
Refactor 2
This PR refactors the integrations functionality:
- reorganize dotenv vault integration
- add infisical integration
- add generic integration interface and run all integrations on workflow init
Summary by CodeRabbit
-
New Features
- Added integration with Infisical, enabling automatic loading of secrets from Infisical workspaces into the environment.
- Introduced dotenv-vault integration for loading environment variables from a
.env.vaultfile. - Enhanced workflow system to support multiple integrations, configurable via the environment section.
-
Documentation
- Updated README to include instructions and examples for using the new Infisical integration.
-
Tests
- Added comprehensive unit tests for Infisical and dotenv-vault integrations, as well as workflow and task functionalities.
-
Chores
- Added Codecov configuration for improved code coverage reporting.
- Updated build workflow triggers and improved checksum update tasks.
- Added a new indirect dependency for testing support.
PR Summary
-
Introduction of Infisical Integration
- The README.md and workflow.go files were updated to incorporate a new feature that integrates with Infisical workspace. This new feature permits us to load secrets from the Infisical workspace. An example of how we can load secrets has been included in the README.md file for more clarity.
-
Updated Checksum Generation
- The
update-checksumstask in the Taskfile.dist.yaml file now generates checksums for YAML files in a specific directory, which improves our file verification process. It also removes the prefix from the checksum file, thereby resulting in cleaner file paths.
- The
-
Addition of dotenv-vault Integration
- Two new files (dotenv_vault.go and client.go) have been introduced which implement a
dotenv-vaultintegration. This allows for loading secrets from a.env.vaultfile, serving as a secure way to handle sensitive data.
- Two new files (dotenv_vault.go and client.go) have been introduced which implement a
-
Introduction of Infisical Integration Tests
- Two additional files (client.go and infiscal_test.go) have been added that implement tests for the Infisical integration. The inclusion of these tests ensures that the new integration behaves as expected and helps prevent potential issues.
-
New List Function for Available Integrations
- The integration.go file has been updated to include a new
Listfunction. This function gives us a compilation of all available integrations for better visibility. Currently, it includes the newly addeddotenv-vaultandinfisicalintegrations.
- The integration.go file has been updated to include a new
Codecov Report
Patch coverage: 40.91% and project coverage change: +2.01% :tada:
Comparison is base (
cd0bd64) 26.19% compared to head (f6016ee) 28.21%.
Additional details and impacted files
@@ Coverage Diff @@
## main #15 +/- ##
==========================================
+ Coverage 26.19% 28.21% +2.01%
==========================================
Files 18 18
Lines 2012 2028 +16
==========================================
+ Hits 527 572 +45
+ Misses 1444 1415 -29
Partials 41 41
| Files Changed | Coverage Δ | |
|---|---|---|
| lib/app/tasks.go | 12.27% <25.00%> (+12.27%) |
:arrow_up: |
| lib/app/workflow.go | 11.74% <44.44%> (+11.74%) |
:arrow_up: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.