Rebrand to Grace Solutions; add README, about_ help, Gitea CI/CD, track Module bin
This commit is contained in:
@@ -1,11 +1,11 @@
|
||||
@{
|
||||
RootModule = 'PSInfisicalAPI.psm1'
|
||||
ModuleVersion = '2026.06.02.1638'
|
||||
ModuleVersion = '2026.06.02.1648'
|
||||
GUID = 'b8a2f3d4-7c51-4d2f-9e6a-1f0c8b3d4e51'
|
||||
Author = 'Alphaeus Mote'
|
||||
CompanyName = ''
|
||||
Copyright = '(c) Alphaeus Mote. All rights reserved.'
|
||||
Description = 'PSInfisicalAPI is a C# binary PowerShell module for the Infisical REST API.'
|
||||
Author = 'Grace Solutions'
|
||||
CompanyName = 'Grace Solutions'
|
||||
Copyright = '(c) Grace Solutions. All rights reserved.'
|
||||
Description = 'PSInfisicalAPI is a C# binary PowerShell module for the Infisical REST API, providing cmdlets for authentication, secret retrieval, and export with automatic environment-variable discovery across Process, User, and Machine scopes.'
|
||||
PowerShellVersion = '5.1'
|
||||
CompatiblePSEditions = @('Desktop','Core')
|
||||
FunctionsToExport = @()
|
||||
@@ -23,10 +23,11 @@
|
||||
TypesToProcess = @('PSInfisicalAPI.Types.ps1xml')
|
||||
PrivateData = @{
|
||||
PSData = @{
|
||||
Tags = @('Infisical','Secrets','API','SecureString')
|
||||
ProjectUri = ''
|
||||
ReleaseNotes = ''
|
||||
CommitHash = '3c47d6ff30ec'
|
||||
Tags = @('Infisical','Secrets','API','SecureString','Vault','Authentication')
|
||||
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 = '430e3a00c921'
|
||||
}
|
||||
}
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,97 @@
|
||||
TOPIC
|
||||
about_PSInfisicalAPI
|
||||
|
||||
SHORT DESCRIPTION
|
||||
PSInfisicalAPI is a C# binary PowerShell module that exposes cmdlets for
|
||||
authenticating against and retrieving secrets from the Infisical REST API,
|
||||
with automatic environment-variable discovery for connection parameters.
|
||||
|
||||
LONG DESCRIPTION
|
||||
The module provides the following cmdlets:
|
||||
|
||||
Connect-Infisical Establish a session.
|
||||
Disconnect-Infisical Clear the current session.
|
||||
Get-InfisicalSecrets List secrets at a path.
|
||||
Get-InfisicalSecret Retrieve a single secret by name.
|
||||
ConvertTo-InfisicalSecretDictionary Convert secret objects to a hashtable.
|
||||
Export-InfisicalSecrets Export secrets to JSON, YAML, XML, or .env.
|
||||
|
||||
Use Get-Help <cmdlet> -Full for parameter details.
|
||||
|
||||
AUTHENTICATION
|
||||
Connect-Infisical supports two parameter sets:
|
||||
|
||||
UniversalAuth -ClientId / -ClientSecret (SecureString)
|
||||
Token -AccessToken (SecureString)
|
||||
|
||||
Common parameters apply to both sets:
|
||||
-BaseUri, -OrganizationId, -ProjectId, -Environment,
|
||||
-SecretPath (default '/'), -ApiVersion (default 'v4'), -PassThru.
|
||||
|
||||
ENVIRONMENT VARIABLE DISCOVERY
|
||||
When any of the Connect-Infisical parameters are omitted, null, or contain
|
||||
only whitespace, the cmdlet scans environment variables in three scopes,
|
||||
in order:
|
||||
|
||||
1. Process
|
||||
2. User
|
||||
3. Machine
|
||||
|
||||
The first matching variable with a non-blank value is used. Explicitly
|
||||
supplied parameter values always win.
|
||||
|
||||
Patterns are case-insensitive and match Infisical's CLI defaults plus
|
||||
common variants such as CLOUDINIT_INFISICAL_* and custom-prefixed names
|
||||
(for example "myapp_infisical_client_id").
|
||||
|
||||
Parameter Example variable names
|
||||
---------------- ----------------------------------------------------------
|
||||
BaseUri INFISICAL_API_URL, INFISICAL_BASE_URL, INFISICAL_HOST
|
||||
OrganizationId INFISICAL_ORG_ID, INFISICAL_ORGANIZATION_ID
|
||||
ProjectId INFISICAL_PROJECT_ID, INFISICAL_WORKSPACE_ID
|
||||
Environment INFISICAL_ENVIRONMENT, INFISICAL_ENV, INFISICAL_ENV_SLUG
|
||||
ClientId INFISICAL_CLIENT_ID, INFISICAL_UNIVERSAL_AUTH_CLIENT_ID
|
||||
ClientSecret INFISICAL_CLIENT_SECRET, INFISICAL_UNIVERSAL_AUTH_CLIENT_SECRET
|
||||
AccessToken INFISICAL_TOKEN, INFISICAL_ACCESS_TOKEN, INFISICAL_AUTH_TOKEN
|
||||
SecretPath INFISICAL_SECRET_PATH, INFISICAL_DEFAULT_SECRET_PATH
|
||||
ApiVersion INFISICAL_API_VERSION
|
||||
|
||||
Sensitive values (ClientSecret, AccessToken) are read directly into a
|
||||
read-only SecureString. Discovered values are never written to logs;
|
||||
only the variable name and the scope it was found in are recorded.
|
||||
|
||||
Use -Verbose to see the scan announcement and any discovered variable
|
||||
names.
|
||||
|
||||
EXAMPLES
|
||||
Example 1: Zero-configuration connect (all values from environment).
|
||||
|
||||
Connect-Infisical
|
||||
Get-InfisicalSecrets
|
||||
|
||||
Example 2: Explicit parameters override discovery.
|
||||
|
||||
$secret = Read-Host -AsSecureString 'Client Secret'
|
||||
Connect-Infisical -Environment prod -ClientSecret $secret
|
||||
|
||||
Example 3: Token-based authentication.
|
||||
|
||||
$token = Read-Host -AsSecureString 'Access Token'
|
||||
Connect-Infisical -AccessToken $token
|
||||
|
||||
Example 4: Export to a .env file.
|
||||
|
||||
Get-InfisicalSecrets |
|
||||
Export-InfisicalSecrets -Path .\secrets.env -Format Env
|
||||
|
||||
SECURITY NOTES
|
||||
- SecureString is used for ClientSecret, AccessToken, and any secret
|
||||
payloads returned by the API.
|
||||
- Sanitization is applied before any value reaches the logging pipeline.
|
||||
- Sessions are stored in process-local state only and never persisted.
|
||||
|
||||
SEE ALSO
|
||||
Get-Help Connect-Infisical -Full
|
||||
Get-Help Get-InfisicalSecrets -Full
|
||||
Get-Help Export-InfisicalSecrets -Full
|
||||
https://infisical.com/docs/api-reference/overview/introduction
|
||||
Reference in New Issue
Block a user