Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge new additions #2

Open
wants to merge 170 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
170 commits
Select commit Hold shift + click to select a range
e181c7e
PowerCommander module cannot be loaded if path contains spaces
sk-keeper Nov 12, 2021
6f0d40d
PowerCommander: Module loading issue when path contains comma.
sk-keeper Nov 15, 2021
9428f9e
Commander: support Stay Logged In enforcement
sk-keeper Oct 13, 2021
1a5036f
Update protobuf
sk-keeper Oct 20, 2021
180e0ee
User aliases
sk-keeper Oct 22, 2021
068c87f
Advance library version
sk-keeper Oct 27, 2021
ca3f45d
Record Types
sk-keeper Nov 19, 2021
f70fb16
Build script
sk-keeper Nov 19, 2021
1e901f6
PowerCommander libraries
sk-keeper Nov 20, 2021
1c40485
PowerCommander: Add-KeeperRecord
sk-keeper Dec 14, 2021
5ed95cc
Documentation
sk-keeper Dec 15, 2021
3f39e92
Record types: shared folder key encryption
sk-keeper Dec 15, 2021
aa4cdd5
Record types: add typed record to shared folder
sk-keeper Dec 15, 2021
36ee5de
PowerCommander: update Keeper SDK library
sk-keeper Dec 15, 2021
ab3b672
Update README.md
craiglurey Dec 29, 2021
0fd8acd
Update README.md
craiglurey Dec 29, 2021
b60b5c4
Direct record share
sk-keeper Jan 4, 2022
913745c
Request timeout
sk-keeper Jan 11, 2022
0285d3e
Add message to KeeperCanceled exception
sk-keeper Jan 18, 2022
4088b51
Release 1.0.3
sk-keeper Jan 20, 2022
7a7c32d
Documentation
sk-keeper Jan 25, 2022
04f8fb6
PowerShell update to Keeper SDK v1.0.3
sk-keeper Jan 25, 2022
b521ca9
NPE when file attachment thumbnail is null in extra
sk-keeper Jan 27, 2022
5257da5
PowerCommander: update SDK
sk-keeper Jan 27, 2022
687bcb5
Assume "text" field type if missing
sk-keeper Feb 23, 2022
85f9733
Update README.md
michaelsanford Mar 29, 2022
aa8e91f
Fix documentation
Apr 4, 2022
7702b8a
Prevent login crash when Username is null
sk-keeper Mar 23, 2022
bf13dcd
Rename folder fix
sk-keeper Apr 8, 2022
8653d89
Sync down issues
sk-keeper Apr 11, 2022
1686508
MSP: Managed Company management
sk-keeper Apr 16, 2022
63d5509
PowerCommander: Enterprise & MSP commands
sk-keeper Apr 19, 2022
9bf35ee
MSP License pool
sk-keeper Apr 19, 2022
72973dc
PowerCommander: update Keeper SDK
sk-keeper Apr 19, 2022
b5573c0
Documentation
sk-keeper Apr 19, 2022
2385094
Record type elements
sk-keeper Apr 22, 2022
0b9eabc
Record Types
sk-keeper Apr 30, 2022
2ee04b5
Legacy record: TOTP field
sk-keeper Apr 30, 2022
3092cb2
PowerCommander: Sharing commands
sk-keeper May 6, 2022
ef38fb3
Documentation
sk-keeper May 6, 2022
a1cc8c0
PowerCommander: 1.0.4 Beta04
sk-keeper May 6, 2022
f648469
PowerCommander: Documentation
sk-keeper May 6, 2022
3ff5489
Vault: delete
sk-keeper May 9, 2022
168c520
Account Transfer
sk-keeper May 18, 2022
60056f1
Audit events
sk-keeper May 18, 2022
5b96981
PowerCommander
sk-keeper May 18, 2022
dab4013
PowerCommander: uddate .Net SDK
sk-keeper May 18, 2022
e5af895
Keeper Secret Manager
sk-keeper May 24, 2022
a84670f
PowerCommander
sk-keeper May 24, 2022
9d5faa3
README.md
sk-keeper May 24, 2022
d4ed108
PowerShell: Move-RecordToFolder: allow all records to be moved
sk-keeper May 25, 2022
e035018
PowerCommander: Move-RecordToFolder: Folder UID
sk-keeper May 25, 2022
2dc7c81
PowerCommander: typo
sk-keeper May 26, 2022
5d71acd
Offline Storage
sk-keeper Jun 23, 2022
80882cd
Added Get-KeeperEnterpriseTeams command
jsprklst May 31, 2022
38e5c99
Updated readme
jsprklst May 31, 2022
b15e2a9
PowerCommander: Enterprise Team format.xml
sk-keeper Jun 21, 2022
2b3e294
2FA: bug fixes
sk-keeper Jun 21, 2022
3493bae
Secret Manager: device/client management
sk-keeper Jun 24, 2022
bb095b6
WebAuthn
sk-keeper Jun 25, 2022
1446b01
PowerCommander: latest Keeper SDK
sk-keeper Jun 27, 2022
916204b
PowerCommander: remove KSM client
sk-keeper Jun 28, 2022
887d12e
SyncDown: refactoring
sk-keeper Jul 6, 2022
78b3fb9
NPE in InMemoryLinkStorage.PutLinks
sk-keeper Jul 6, 2022
e4acfb9
PowerCommander: Support SecureString password
sk-keeper Jul 8, 2022
9e49404
PowerCommander: Copy-KeeperToClipboard support stdout destination
sk-keeper Jul 20, 2022
edbd94d
PowerCommander: Add-KeeperRecord: clear notes
sk-keeper Jul 20, 2022
299ebc8
Password generator
sk-keeper Aug 3, 2022
faf8425
Release 1.0.4 Beta 09
sk-keeper Jul 8, 2022
b61333e
Update proto files
sk-keeper Jul 12, 2022
f733678
Tabulate
sk-keeper Jul 15, 2022
dfc12d5
Documentation XML
sk-keeper Aug 3, 2022
d8f1d6f
Store record V3. Pad data.
sk-keeper Aug 4, 2022
b16ff1e
Commander: bug fixes
sk-keeper Aug 5, 2022
05461b7
PowerCommander: upgrade SDK
sk-keeper Aug 5, 2022
caa262a
Connect to push server in background
sk-keeper Sep 6, 2022
fd0ab46
Update codeql-analysis.yml
sk-keeper Sep 21, 2022
c477553
MSP: Consumption billing
sk-keeper Sep 27, 2022
57489bf
PowerCommander: Get-KeeperAvailableTeams
sk-keeper Oct 13, 2022
d1b17cd
Release 1.0.4
sk-keeper Oct 28, 2022
aeb8ae7
Rename cli -> Cli
sk-keeper Nov 28, 2022
df1afb8
Update codeql-analysis.yml
sk-keeper Nov 28, 2022
3b3858e
Cli: version on Linux
sk-keeper Nov 29, 2022
6d06fd1
Powerscript: Get-KeeperEnterpriseTeamUsers cmdlet
sk-keeper Dec 15, 2022
867a3b0
Get-KeeperEnterpriseTeamUsers cmdlet: autocompletion
sk-keeper Dec 15, 2022
fcee066
Release 1.0.5-beta01
sk-keeper Jan 20, 2023
44d6f69
Refactor push notifications
sk-keeper Jan 26, 2023
056fab3
Consolidated audit reports
sk-keeper Jan 26, 2023
9f1fd9f
Bulk record update
sk-keeper Jan 31, 2023
979dd59
Documentation
sk-keeper Jan 31, 2023
062a8fe
Add team to shared folder failure.
sk-keeper Feb 7, 2023
5610c53
Keeper Import
sk-keeper Feb 8, 2023
c93e724
Import: prevent duplicates
sk-keeper Feb 15, 2023
6d7dfc5
Extend Account Share Expiration
sk-keeper Mar 28, 2023
2dc1101
Documentation
sk-keeper Mar 28, 2023
564dca9
Update script-examples.md
sk-keeper Mar 29, 2023
80bbdff
Handle 'throttled' error
sk-keeper May 8, 2023
8847d0f
PowerCommander: support complex record types
sk-keeper May 18, 2023
d5e4e30
Update PowerCommander libraries
sk-keeper May 18, 2023
a6003b8
Commander: persistent login
sk-keeper May 22, 2023
637b69e
PowerCommander fix
sk-keeper May 27, 2023
f918b3b
PowerCommander: enable
sk-keeper May 27, 2023
fa68242
Powercommander: copy to clipboard
sk-keeper Jun 4, 2023
c33b74c
Powercommander: MSP billing report
sk-keeper Jun 9, 2023
c9f1f5e
PowerCommander: Set-Clipboard
sk-keeper Jun 29, 2023
fb20a0e
Preserve unsupported field elements
sk-keeper May 26, 2023
3562144
Proxy support
sk-keeper Jun 27, 2023
d134fcc
Release push on error
sk-keeper Jun 28, 2023
f837a7f
Update proto files
sk-keeper Sep 9, 2023
0dc02e4
External record share
sk-keeper Sep 13, 2023
87b7b61
PowerCommand: Add-KeeperRecord cmdlet fails to add custom field
sk-keeper Sep 13, 2023
24942b1
Publish PowerCommander to PowerShell Gallery
sk-keeper Sep 19, 2023
e073f62
Update README.md
sk-keeper Sep 19, 2023
d7ad0ec
Update codeql-analysis.yml
sk-keeper Sep 20, 2023
93f11d4
PowerCommander: do not delete pending users on lock
sk-keeper Sep 22, 2023
e35aeb9
PowerCommander: use Write-Warning to indicate issues
sk-keeper Sep 25, 2023
1ed9fa1
Lock pending users: do not delete
sk-keeper Sep 22, 2023
d7a515f
move API fails when it contains multiple links for the same record
sk-keeper Sep 26, 2023
458f13d
BatchVaultOperations: update folder name
sk-keeper Oct 9, 2023
1da9087
sync-down: ignore user_folder_shared_folders_removed data
sk-keeper Oct 31, 2023
9759198
KSM SDK
sk-keeper Nov 14, 2023
b8cd2ac
PowerCommander: create KSM configuration
sk-keeper Nov 14, 2023
0fb7bb0
PowerCommander 0.9.3 release
sk-keeper Nov 14, 2023
1487e1b
Direct record share fix
sk-keeper Nov 23, 2023
e2d7ab6
PowerCommander 0.9.4
sk-keeper Nov 23, 2023
1b3f0a3
Support appFiller field
sk-keeper Feb 13, 2024
d3f56bb
PowerCommander 0.9.5
sk-keeper Feb 13, 2024
99593d8
Field type default values
sk-keeper Feb 14, 2024
b2f46ab
PowerCommander 0.9.6
sk-keeper Feb 20, 2024
128e292
Import: Subfolder of Shared Folder cannot be added.
sk-keeper Mar 14, 2024
0fc1cdb
Batch vault update
sk-keeper Apr 15, 2024
bbd0b16
PowerCommander: One-Time Share
sk-keeper May 1, 2024
02a2f34
PowerCommander: download file attachments
sk-keeper Jun 5, 2024
d7cb868
New record field types
sk-keeper May 1, 2024
8bfe16d
Upload attachment fix
sk-keeper May 6, 2024
958e74b
Fix warnings
sk-keeper May 8, 2024
1ce7c1c
Stop using Task.Result
sk-keeper Jun 4, 2024
49e3b11
Initialize password record with empty strings
sk-keeper Jun 6, 2024
462965d
Documentation
sk-keeper Jun 7, 2024
b7bcbae
Update build script
sk-keeper Jun 9, 2024
f15d08b
PowerCommander: Download file attachment to stream
sk-keeper Jun 11, 2024
2e5c5eb
PowerCommander: Download file attachment to stream
sk-keeper Jun 11, 2024
7721339
PowerCommander document Add-KeeperRecord cmdlet. KC-750
sk-keeper Jun 14, 2024
4091b1e
Record History
sk-keeper Jun 19, 2024
4feba67
Shared Folder permissions: batch mode
sk-keeper Jun 22, 2024
29fba68
Batch mode: folder update count
sk-keeper Jun 23, 2024
7a1eade
Upload file attachment
sk-keeper Jun 29, 2024
efae4d7
Update README.md
sk-keeper Jul 5, 2024
7d40aea
'required' flag on typed field is dropped
sk-keeper Jul 16, 2024
5d03278
PowerCommander: update KeeperSdk library
sk-keeper Jul 16, 2024
4caadd6
Test 2047 RSA key
sk-keeper Jul 19, 2024
54823eb
WPF Login Sample
sk-keeper Jul 29, 2024
87ca142
Release 1.0.5
sk-keeper Aug 27, 2024
9b9a35b
PowerCommander: Switch to Managed Company
sk-keeper Oct 8, 2024
2613304
PowerCommander: this-device and invite-user commands
sk-keeper Oct 9, 2024
6a7e86d
PowerCommander: v0.9.14
sk-keeper Oct 9, 2024
05a7b6d
Powershell Commander: transfer-user in MC environment
sk-keeper Oct 15, 2024
f6bc156
Make LoadV2 methos public
sk-keeper Sep 5, 2024
1bc643f
PowerCommander: Display enterprise role
sk-keeper Oct 16, 2024
bb7cae4
PowerCommander: update Keeper SDK
sk-keeper Oct 16, 2024
0bdc64a
Powershell ignores password property of the configuration file
sk-keeper Oct 29, 2024
ff70564
PowerCommander: respect user's password property of the configuration…
sk-keeper Oct 29, 2024
a8da69f
Add team to shared folder
sk-keeper Nov 7, 2024
28234e5
PowerCommander: upgrade to SDK 1.0.6
sk-keeper Nov 7, 2024
4047242
PowerCommander: non-interactive environment
sk-keeper Nov 12, 2024
0106d67
Auth.GetUsersForShare: use the latest API
sk-keeper Nov 19, 2024
2bd494b
Add self to a shared folder issue.
sk-keeper Nov 23, 2024
d72f662
PowerCommander: add-folder does not respect current folder
sk-keeper Dec 7, 2024
caa13f8
Issue with verifying Custom record type fields #129
sk-keeper Dec 8, 2024
d92f4a9
Release 1.0.7 Beta 02
sk-keeper Dec 8, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@
end_of_line=lf
[*.cs]
csharp_indent_case_contents=true
csharp_space_after_cast=true
csharp_space_after_cast=true
csharp_indent_case_contents_when_block=false
110 changes: 81 additions & 29 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,21 @@ on:
# branches:
# - 'release_*'
workflow_dispatch:
inputs:
sqlite_storage:
description: Build SQLite Vault storage
type: boolean
required: false
default: false
cli:
description: Build CLI package
type: boolean
required: false
default: false


jobs:

build:
runs-on: windows-latest

steps:
- name: Setup product versions
run: |
Expand All @@ -31,61 +39,105 @@ jobs:
echo "BUILD_VERSION=${buildVersion}" >> $Env:GITHUB_ENV
shell: powershell

- uses: actions/checkout@v2
- uses: actions/setup-dotnet@v1
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4
with:
dotnet-version: 5.0.x
- uses: microsoft/setup-msbuild@v1.0.2
dotnet-version: '8.0.x'
- uses: microsoft/setup-msbuild@v2

- uses: nuget/setup-nuget@v1
- uses: nuget/setup-nuget@v2
- run: nuget restore KeeperSdk.sln


- name: Load signing certificate
run: |
if (Test-Path -Path certificate.txt) { Remove-Item certificate.txt }
if (Test-Path -Path certificate.pfx) { Remove-Item certificate.pfx }
Set-Content -Path certificate.txt -Value '${{ secrets.PFX_CERT }}'
certutil -decode certificate.txt certificate.pfx
Remove-Item certificate.txt
shell: powershell

- name: Build Keeper SDK Nuget package
working-directory: ./KeeperSdk
run: |
if (Test-Path bin) { Remove-Item -Force -Recurse bin }
dotnet restore /P:Configuration=Release
dotnet clean /P:Configuration=Release
dotnet build /P:Configuration=Release /P:Version=${Env:SDK_VERSION} /P:AssemblyVersion=${Env:BUILD_VERSION} /P:FileVersion=${Env:BUILD_VERSION}
echo "TODO binaries signing"
dotnet pack --no-build --no-restore /P:Configuration=Release /P:Version=${Env:PACKAGE_VERSION} /P:IncludeSymbols=true /P:SymbolPackageFormat=snupkg
dotnet build /P:Configuration=Release /P:Version=${Env:PACKAGE_VERSION} /P:AssemblyVersion=${Env:BUILD_VERSION} /P:FileVersion=${Env:BUILD_VERSION}
& 'C:/Program Files (x86)/Windows Kits/10/bin/10.0.17763.0/x86/signtool.exe' sign /f ..\certificate.pfx /t "http://timestamp.digicert.com" /v /p "${{ secrets.PFX_PASS }}" /d ".NET Keeper SDK" "bin\Release\net452\KeeperSdk.dll"
& 'C:/Program Files (x86)/Windows Kits/10/bin/10.0.17763.0/x86/signtool.exe' sign /f ..\certificate.pfx /t "http://timestamp.digicert.com" /v /p "${{ secrets.PFX_PASS }}" /d ".NET Keeper SDK" "bin\Release\netstandard2.0\KeeperSdk.dll"
dotnet pack --no-build --no-restore --no-dependencies /P:Configuration=Release /P:Version=${Env:PACKAGE_VERSION} /P:IncludeSymbols=true /P:SymbolPackageFormat=snupkg
shell: powershell

- name: Build Security Key library for Windows
working-directory: ./WinWebAuthn
- name: Build SQLite Vault Storage
working-directory: ./OfflineStorageSqlite
run: |
if (Test-Path bin) { Remove-Item -Force -Recurse bin }
msbuild /T:Restore,Clean /P:Configuration=Release
msbuild /T:Build /P:Configuration=Release /P:Version=${Env:SDK_VERSION} /P:AssemblyVersion=${Env:BUILD_VERSION} /P:FileVersion=${Env:BUILD_VERSION}
dotnet build --configuration=Release --no-dependencies
& 'C:/Program Files (x86)/Windows Kits/10/bin/10.0.17763.0/x86/signtool.exe' sign /f ..\certificate.pfx /t "http://timestamp.digicert.com" /v /p "${{ secrets.PFX_PASS }}" /d ".NET Keeper SDK Offline SQLite Storage" "bin\Release\\netstandard2.0\OfflineStorageSqlite.dll"
dotnet pack --no-build --no-restore --configuration=Release /P:IncludeSymbols=true /P:SymbolPackageFormat=snupkg
shell: powershell

echo "TODO binaries signing"
- name: Build CLI library
working-directory: ./Cli
run: |
if (Test-Path bin) { Remove-Item -Force -Recurse bin }
dotnet build --configuration=Release --no-dependencies
& 'C:/Program Files (x86)/Windows Kits/10/bin/10.0.17763.0/x86/signtool.exe' sign /f ..\certificate.pfx /t "http://timestamp.digicert.com" /v /p "${{ secrets.PFX_PASS }}" /d ".NET Keeper SDK" "bin\Release\net472\Cli.dll"
& 'C:/Program Files (x86)/Windows Kits/10/bin/10.0.17763.0/x86/signtool.exe' sign /f ..\certificate.pfx /t "http://timestamp.digicert.com" /v /p "${{ secrets.PFX_PASS }}" /d ".NET Keeper SDK" "bin\Release\netstandard2.0\Cli.dll"
dotnet pack --no-build --no-restore --no-dependencies --configuration=Release /P:IncludeSymbols=true /P:SymbolPackageFormat=snupkg
shell: powershell

- name: Build .Net Commander
working-directory: ./Commander
run: |
if (Test-Path bin) { Remove-Item -Force -Recurse bin }
msbuild /T:Restore,Clean /P:Configuration=Release
msbuild /T:Build /P:Configuration=Release /P:Version=${Env:SDK_VERSION} /P:AssemblyVersion=${Env:BUILD_VERSION} /P:FileVersion=${Env:BUILD_VERSION}

echo "TODO binaries signing"
msbuild /T:Restore /P:Configuration=Release
msbuild /T:Build /P:Configuration=Release /p:BuildProjectReferences=false
& 'C:/Program Files (x86)/Windows Kits/10/bin/10.0.17763.0/x86/signtool.exe' sign /f ..\certificate.pfx /t "http://timestamp.digicert.com" /v /p "${{ secrets.PFX_PASS }}" /d ".NET Keeper SDK" "bin\Release\Commander.exe"
shell: powershell

- name: Zip Commander
run: |
$params = @{
Path = "Commander/bin/Release/*.exe", "Commander/bin/Release/Commander.exe.config", "Commander/bin/Release/*.dll", "OfflineStorageSqlite/bin/Release/netstandard2.0/OfflineStorageSqlite.dll"
CompressionLevel = "Fastest"
DestinationPath = "Commander-${Env:PACKAGE_VERSION}.zip"
}
Compress-Archive @params
shell: powershell

- name: Store SDK Nuget artifacts
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: KeeperSdk-${{ env.PACKAGE_VERSION }}-Nuget-Package
path: |
KeeperSdk/bin/Release/Keeper.Sdk.${{ env.PACKAGE_VERSION }}.nupkg
KeeperSdk/bin/Release/Keeper.Sdk.${{ env.PACKAGE_VERSION }}.snupkg
retention-days: 1

- name: Store Commander artifacts
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: Commander-${{ env.PACKAGE_VERSION }}
path: Commander-${{ env.PACKAGE_VERSION }}.zip
retention-days: 1

- name: Store SQLite Offline Storage artifacts
if: ${{ inputs.sqlite_storage }}
uses: actions/upload-artifact@v4
with:
name: OfflineStorageSqlite
path: |
OfflineStorageSqlite/bin/Release/Keeper.Storage.Sqlite.*.nupkg
OfflineStorageSqlite/bin/Release/Keeper.Storage.Sqlite.*.snupkg
retention-days: 1

- name: Store artifacts
if: ${{ inputs.cli }}
uses: actions/upload-artifact@v4
with:
name: Cli
path: |
Commander/bin/Release/Commander.exe
Commander/bin/Release/Commander.exe.config
Commander/bin/Release/CommandLine.dll
WinWebAuthn/bin/Release/WinWebAuthn.dll
KeeperSdk/bin/Release/net45/*.dll
Cli/bin/Release/Keeper.Cli.*.nupkg
Cli/bin/Release/Keeper.Cli.*.snupkg
retention-days: 1
17 changes: 8 additions & 9 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,15 +11,14 @@
#
name: "Code Analysis"

on:
# push:
# branches: [code_analysis]
workflow_dispatch:

on:
schedule:
- cron: '17 23 * * 3'

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
runs-on: windows-latest

strategy:
fail-fast: false
Expand All @@ -35,7 +34,7 @@ jobs:

# Initializes the CodeQL tools for scanning.
- name: Initialize Code Analysis
uses: github/codeql-action/init@v1
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
Expand All @@ -46,7 +45,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v1
uses: github/codeql-action/autobuild@v2

# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
Expand All @@ -60,4 +59,4 @@ jobs:
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
uses: github/codeql-action/analyze@v2
37 changes: 37 additions & 0 deletions .github/workflows/power-commander.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Publish PowerCommander

on: [workflow_dispatch]

jobs:
build:
runs-on: windows-latest
environment: prod

steps:
- uses: actions/checkout@v2

- name: Load signing certificate
run: |
if (Test-Path -Path certificate.txt) { Remove-Item certificate.txt }
if (Test-Path -Path certificate.pfx) { Remove-Item certificate.pfx }
Set-Content -Path certificate.txt -Value '${{ secrets.PFX_CERT }}'
certutil -decode certificate.txt certificate.pfx
Remove-Item certificate.txt
shell: powershell

- name: Sign PowerShell scripts
working-directory: ./PowerCommander
run: |
$certPassword = ConvertTo-SecureString -String "${{ secrets.PFX_PASS }}" -AsPlainText -Force
$certData = Get-PfxData -FilePath "..\certificate.pfx" -Password $certPassword
$cert = $certData.EndEntityCertificates[0]
Set-AuthenticodeSignature -FilePath *.ps1 -Certificate $cert
Set-AuthenticodeSignature -FilePath *.ps1xml -Certificate $cert
Set-AuthenticodeSignature -FilePath PowerCommander.psd1 -Certificate $cert
Set-AuthenticodeSignature -FilePath PowerCommander.psm1 -Certificate $cert
shell: powershell

- name: Publish to PowerShell Gallery
run: |
Publish-Module -Path .\PowerCommander\ -NuGetApiKey "${{ secrets.POWERSHELL_PUBLISH_KEY }}"
shell: powershell
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,7 @@ project.lock.json
UpgradeLog.htm
nuget.config

Help/
Help/
.vscode/

packages.config
33 changes: 33 additions & 0 deletions Cli/Cli.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFrameworks>netstandard2.0;net472</TargetFrameworks>
<RootNamespace>Cli</RootNamespace>
<Version>1.0.2</Version>
<PackageId>Keeper.Cli</PackageId>
<AssemblyVersion>1.0.2.3</AssemblyVersion>
<FileVersion>1.0.2.3</FileVersion>
<RepositoryUrl>https://github.com/Keeper-Security/keeper-sdk-dotnet</RepositoryUrl>
<PackageProjectUrl>https://github.com/Keeper-Security/keeper-sdk-dotnet/Cli</PackageProjectUrl>
<Authors>Keeper Security Inc.</Authors>
<Product>Cli for .NET Keeper Sdk</Product>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<RepositoryType>Github</RepositoryType>
<NeutralLanguage>en-US</NeutralLanguage>
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
<IncludeSourceRevisionInInformationalVersion>false</IncludeSourceRevisionInInformationalVersion>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="CommandLineParser" Version="2.9.1" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\KeeperSdk\KeeperSdk.csproj" />
</ItemGroup>

<ItemGroup>
<Reference Include="PresentationCore" Condition="'$(TargetFramework)' == 'net472'" />
</ItemGroup>
</Project>
Loading