Rebrand to Grace Solutions; add README, about_ help, Gitea CI/CD, track Module bin #1

Merged
gsadmin merged 8 commits from dev into main 2026-06-03 01:53:11 +00:00
8 changed files with 39 additions and 31 deletions
Showing only changes of commit 7e5209190a - Show all commits
+6
View File
@@ -6,6 +6,12 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) loos
## Unreleased
## 2026.06.03.0032
- Build produced from commit c86676010532.
## Unreleased (carried forward)
## 2026.06.02.1907
- Build produced from commit fa65c18bc171.
+2 -2
View File
@@ -1,6 +1,6 @@
@{
RootModule = 'PSInfisicalAPI.psm1'
ModuleVersion = '2026.06.02.1907'
ModuleVersion = '2026.06.03.0032'
GUID = 'b8a2f3d4-7c51-4d2f-9e6a-1f0c8b3d4e51'
Author = 'Grace Solutions'
CompanyName = 'Grace Solutions'
@@ -27,7 +27,7 @@
LicenseUri = 'https://www.gnu.org/licenses/agpl-3.0.html'
ProjectUri = 'https://prod.git.gracesolution.info/gsadmin/PSInfisicalAPI'
ReleaseNotes = 'See CHANGELOG.md in the project repository for release history.'
CommitHash = 'fa65c18bc171'
CommitHash = 'c86676010532'
}
}
}
Binary file not shown.
+3 -1
View File
@@ -133,7 +133,9 @@ function Update-Changelog {
if ($existing -match [Regex]::Escape($marker)) { return }
$insertion = "## $Version`r`n`r`n- Build produced from commit $CommitHash.`r`n`r`n"
$updated = $existing -replace '## Unreleased', "## Unreleased`r`n`r`n$insertion## Unreleased (carried forward)"
$unreleasedRegex = [regex]::new('(?m)^## Unreleased\r?$')
if (-not $unreleasedRegex.IsMatch($existing)) { return }
$updated = $unreleasedRegex.Replace($existing, "## Unreleased`r`n`r`n$insertion## Unreleased (carried forward)", 1)
[System.IO.File]::WriteAllText($ChangelogFile.FullName, $updated, [System.Text.UTF8Encoding]::new($false))
}
+12 -12
View File
@@ -954,10 +954,10 @@ Get-InfisicalSecrets `
[-Environment <string>] `
[-SecretPath <string>] `
[-Recursive] `
[-IncludeImports <bool>] `
[-IncludeImports] `
[-IncludePersonalOverrides] `
[-ExpandSecretReferences <bool>] `
[-ViewSecretValue <bool>] `
[-ExpandSecretReferences] `
[-ViewSecretValue] `
[-MetadataFilter <hashtable>] `
[-TagSlugs <string[]>]
```
@@ -969,9 +969,9 @@ ProjectId: Current connection ProjectId
Environment: Current connection Environment
SecretPath: Current connection DefaultSecretPath or /
Recursive: false
IncludeImports: true
ExpandSecretReferences: true
ViewSecretValue: true
IncludeImports: false
ExpandSecretReferences: false
ViewSecretValue: false
```
## Behavior
@@ -1020,9 +1020,9 @@ Get-InfisicalSecret `
[-SecretPath <string>] `
[-Version <int>] `
[-Type <InfisicalSecretType>] `
[-ViewSecretValue <bool>] `
[-ExpandSecretReferences <bool>] `
[-IncludeImports <bool>]
[-ViewSecretValue] `
[-ExpandSecretReferences] `
[-IncludeImports]
```
## Parameter Attributes
@@ -1040,9 +1040,9 @@ ProjectId: Current connection ProjectId
Environment: Current connection Environment
SecretPath: Current connection DefaultSecretPath or /
Type: Shared
ViewSecretValue: true
ExpandSecretReferences: true
IncludeImports: true
ViewSecretValue: false
ExpandSecretReferences: false
IncludeImports: false
```
## Behavior
@@ -18,9 +18,9 @@ namespace PSInfisicalAPI.Cmdlets
[Parameter] public string SecretPath { get; set; }
[Parameter] public int? Version { get; set; }
[Parameter] public InfisicalSecretType Type { get; set; } = InfisicalSecretType.Shared;
[Parameter] public bool ViewSecretValue { get; set; } = true;
[Parameter] public bool ExpandSecretReferences { get; set; } = true;
[Parameter] public bool IncludeImports { get; set; } = true;
[Parameter] public SwitchParameter ViewSecretValue { get; set; }
[Parameter] public SwitchParameter ExpandSecretReferences { get; set; }
[Parameter] public SwitchParameter IncludeImports { get; set; }
protected override void ProcessRecord()
{
@@ -36,9 +36,9 @@ namespace PSInfisicalAPI.Cmdlets
SecretPath = SecretPath,
Version = Version,
Type = Type.ToString(),
ViewSecretValue = ViewSecretValue,
ExpandSecretReferences = ExpandSecretReferences,
IncludeImports = IncludeImports
ViewSecretValue = ViewSecretValue.IsPresent,
ExpandSecretReferences = ExpandSecretReferences.IsPresent,
IncludeImports = IncludeImports.IsPresent
};
InfisicalSecretsClient client = new InfisicalSecretsClient(HttpClient, Logger);
@@ -16,10 +16,10 @@ namespace PSInfisicalAPI.Cmdlets
[Parameter] public string Environment { get; set; }
[Parameter] public string SecretPath { get; set; }
[Parameter] public SwitchParameter Recursive { get; set; }
[Parameter] public bool IncludeImports { get; set; } = true;
[Parameter] public SwitchParameter IncludeImports { get; set; }
[Parameter] public SwitchParameter IncludePersonalOverrides { get; set; }
[Parameter] public bool ExpandSecretReferences { get; set; } = true;
[Parameter] public bool ViewSecretValue { get; set; } = true;
[Parameter] public SwitchParameter ExpandSecretReferences { get; set; }
[Parameter] public SwitchParameter ViewSecretValue { get; set; }
[Parameter] public Hashtable MetadataFilter { get; set; }
[Parameter] public string[] TagSlugs { get; set; }
@@ -35,10 +35,10 @@ namespace PSInfisicalAPI.Cmdlets
Environment = Environment,
SecretPath = SecretPath,
Recursive = Recursive.IsPresent,
IncludeImports = IncludeImports,
IncludeImports = IncludeImports.IsPresent,
IncludePersonalOverrides = IncludePersonalOverrides.IsPresent,
ExpandSecretReferences = ExpandSecretReferences,
ViewSecretValue = ViewSecretValue,
ExpandSecretReferences = ExpandSecretReferences.IsPresent,
ViewSecretValue = ViewSecretValue.IsPresent,
MetadataFilter = ToStringDictionary(MetadataFilter),
TagSlugs = TagSlugs
};
@@ -35,11 +35,11 @@ namespace PSInfisicalAPI.Secrets
InfisicalEndpointDefinition definition = InfisicalEndpointRegistry.Get(InfisicalEndpointNames.ListSecrets);
List<KeyValuePair<string, string>> queryParameters = new List<KeyValuePair<string, string>>();
AddIfNotNull(queryParameters, "workspaceId", FirstNonEmpty(query.ProjectId, connection.ProjectId));
AddIfNotNull(queryParameters, "projectId", FirstNonEmpty(query.ProjectId, connection.ProjectId));
AddIfNotNull(queryParameters, "environment", FirstNonEmpty(query.Environment, connection.Environment));
AddIfNotNull(queryParameters, "secretPath", FirstNonEmpty(query.SecretPath, connection.DefaultSecretPath, "/"));
queryParameters.Add(new KeyValuePair<string, string>("recursive", query.Recursive ? "true" : "false"));
if (query.IncludeImports.HasValue) { queryParameters.Add(new KeyValuePair<string, string>("include_imports", query.IncludeImports.Value ? "true" : "false")); }
if (query.IncludeImports.HasValue) { queryParameters.Add(new KeyValuePair<string, string>("includeImports", query.IncludeImports.Value ? "true" : "false")); }
if (query.IncludePersonalOverrides) { queryParameters.Add(new KeyValuePair<string, string>("includePersonalOverrides", "true")); }
if (query.ExpandSecretReferences.HasValue) { queryParameters.Add(new KeyValuePair<string, string>("expandSecretReferences", query.ExpandSecretReferences.Value ? "true" : "false")); }
if (query.ViewSecretValue.HasValue) { queryParameters.Add(new KeyValuePair<string, string>("viewSecretValue", query.ViewSecretValue.Value ? "true" : "false")); }
@@ -93,14 +93,14 @@ namespace PSInfisicalAPI.Secrets
Dictionary<string, string> pathParameters = new Dictionary<string, string> { { "secretName", query.SecretName } };
List<KeyValuePair<string, string>> queryParameters = new List<KeyValuePair<string, string>>();
AddIfNotNull(queryParameters, "workspaceId", FirstNonEmpty(query.ProjectId, connection.ProjectId));
AddIfNotNull(queryParameters, "projectId", FirstNonEmpty(query.ProjectId, connection.ProjectId));
AddIfNotNull(queryParameters, "environment", FirstNonEmpty(query.Environment, connection.Environment));
AddIfNotNull(queryParameters, "secretPath", FirstNonEmpty(query.SecretPath, connection.DefaultSecretPath, "/"));
AddIfNotNull(queryParameters, "type", string.IsNullOrEmpty(query.Type) ? "shared" : query.Type.ToLowerInvariant());
if (query.Version.HasValue) { queryParameters.Add(new KeyValuePair<string, string>("version", query.Version.Value.ToString(CultureInfo.InvariantCulture))); }
if (query.ViewSecretValue.HasValue) { queryParameters.Add(new KeyValuePair<string, string>("viewSecretValue", query.ViewSecretValue.Value ? "true" : "false")); }
if (query.ExpandSecretReferences.HasValue) { queryParameters.Add(new KeyValuePair<string, string>("expandSecretReferences", query.ExpandSecretReferences.Value ? "true" : "false")); }
if (query.IncludeImports.HasValue) { queryParameters.Add(new KeyValuePair<string, string>("include_imports", query.IncludeImports.Value ? "true" : "false")); }
if (query.IncludeImports.HasValue) { queryParameters.Add(new KeyValuePair<string, string>("includeImports", query.IncludeImports.Value ? "true" : "false")); }
Uri uri = InfisicalUriBuilder.Build(connection.BaseUri, definition, pathParameters, queryParameters);
InfisicalHttpResponse response = ExecuteAuthorized(connection, definition, "RetrieveSecret", uri, null);