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

Release 1.3 #117

Merged
merged 30 commits into from
Nov 30, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
47345c4
feat(store-types-get) Add -o flag to update integration manifest with…
m8rmclaren Nov 3, 2023
7035a3f
chore: Add test for output-to-integration-manifest
m8rmclaren Nov 3, 2023
5bc793d
chore: refactor install script, test cases for im output
m8rmclaren Nov 6, 2023
912da67
chore: Create powershell install script
m8rmclaren Nov 7, 2023
81c97f8
chore: Remove .DS_Store
m8rmclaren Nov 7, 2023
3a6be4c
chore: NewStoreTypesGetFlags -> CreateStoreTypesGetFlags
m8rmclaren Nov 7, 2023
c23b156
Delete binary
m8rmclaren Nov 7, 2023
a1cb13c
chore: Change New verbiage to Create
m8rmclaren Nov 7, 2023
d02ddee
chore: Document install to readme_source.md
m8rmclaren Nov 8, 2023
df1e9d8
debug store-type test
spbsoluble Nov 8, 2023
3f6c8e7
chore: Refactor storeType Get tests into single test; regen docs
m8rmclaren Nov 9, 2023
9aa438f
Merge branch 'manifest' of github.com:Keyfactor/kfutil into manifest
m8rmclaren Nov 9, 2023
63d0c06
chore: Rename Get tests to Test_StoreTypesGet
m8rmclaren Nov 9, 2023
25aebab
chore: Add logging
m8rmclaren Nov 9, 2023
17526d2
chore: Change storeTypes get to use TestExecuteCommand
m8rmclaren Nov 9, 2023
f6d242a
replace starter and release workflows
Nov 17, 2023
cf38523
Update generated README
Nov 17, 2023
9a98b5a
use workflows from kfutils-updates branch
Nov 17, 2023
f722d0a
Merge branch 'update2bootstrap' of https://github.com/Keyfactor/kfuti…
Nov 17, 2023
b68fc71
Merge branch 'update2bootstrap' of https://github.com/Keyfactor/kfuti…
Nov 17, 2023
0fa1411
Merge branch 'update2bootstrap' of https://github.com/Keyfactor/kfuti…
Nov 17, 2023
5fc9559
force build on kfutil-updates
Nov 17, 2023
9567d4f
remove test file
Nov 17, 2023
6c88cc2
No 'draft' releases. prerelease directive will automatically label *r…
Nov 17, 2023
1447000
use v2 workflows
Nov 17, 2023
bec2695
chore: Update changelog for 1.3
m8rmclaren Nov 17, 2023
687e12d
Merge pull request #109 from Keyfactor/manifest
m8rmclaren Nov 17, 2023
7c79c8a
Update generated README
Nov 17, 2023
ff6f5cf
Finalize kfutil 1.3.0 release
fiddlermikey Nov 20, 2023
4a5a9bc
Merge branch 'main' into release-1.3
spbsoluble Nov 30, 2023
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
55 changes: 16 additions & 39 deletions .github/workflows/keyfactor-starter-workflow.yml
Original file line number Diff line number Diff line change
@@ -1,43 +1,20 @@
name: Starter Workflow
on: workflow_dispatch
name: Keyfactor Bootstrap Workflow

jobs:
catalog-update-check:
runs-on: windows-latest
outputs:
upd_cat: ${{ steps.read-json.outputs.prop }}
steps:
- uses: actions/checkout@v4
- name: Read json
id: read-json
shell: pwsh
run: |
$json = Get-Content integration-manifest.json | ConvertFrom-Json
echo "::set-output name=prop::$(echo $json.update_catalog)"

#call-create-github-release-workflow:
# uses: Keyfactor/actions/.github/workflows/github-release.yml@main
on:
workflow_dispatch:
pull_request:
types: [opened, closed, synchronize, edited, reopened]
push:
create:
branches:
- 'release-*.*'

#call-dotnet-build-and-release-workflow:
# needs: [call-create-github-release-workflow]
# uses: Keyfactor/actions/.github/workflows/dotnet-build-and-release.yml@main
# with:
# release_version: ${{ needs.call-create-github-release-workflow.outputs.release_version }}
# release_url: ${{ needs.call-create-github-release-workflow.outputs.release_url }}
# release_dir: SslStoreCaProxy/bin/Release
# secrets:
# token: ${{ secrets.PRIVATE_PACKAGE_ACCESS }}

call-generate-readme-workflow:
if: github.event_name == 'push' || github.event_name == 'workflow_dispatch'
uses: Keyfactor/actions/.github/workflows/generate-readme.yml@main
jobs:
call-starter-workflow:
uses: keyfactor/actions/.github/workflows/starter.yml@v2
secrets:
token: ${{ secrets.APPROVE_README_PUSH }}
token: ${{ secrets.V2BUILDTOKEN}}
APPROVE_README_PUSH: ${{ secrets.APPROVE_README_PUSH}}
gpg_key: ${{ secrets.KF_GPG_PRIVATE_KEY }}
gpg_pass: ${{ secrets.KF_GPG_PASSPHRASE }}

call-update-catalog-workflow:
needs: catalog-update-check
if: needs.catalog-update-check.outputs.upd_cat == 'True' && (github.event_name == 'push' || github.event_name == 'workflow_dispatch')
uses: Keyfactor/actions/.github/workflows/update-catalog.yml@main
secrets:
token: ${{ secrets.SDK_SYNC_PAT }}

43 changes: 0 additions & 43 deletions .github/workflows/release.yml

This file was deleted.

4 changes: 2 additions & 2 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ jobs:
uses: actions/checkout@v4
- name: Run tests
run: |
unset KFUTIL_DEBUG
export KFUTIL_DEBUG=1
go test -v ./cmd -run "^Test_StoreTypes*"
Test_StoreTypes_KFC_10_2_1:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -486,4 +486,4 @@ jobs:

# Run the tests with coverage found in the pkg directory
- name: Run tests
run: go test -v -cover ./pkg/...
run: go test -v -cover ./pkg/...
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -21,3 +21,4 @@ vendor/
*.csv
/.vs/**/*
/.vscode/**/*
.DS_Store
2 changes: 1 addition & 1 deletion .goreleaser.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ release:
- glob: 'integration-manifest.json'
name_template: '{{ .ProjectName }}_{{ .Version }}_manifest.json'
# If you want to manually examine the release before its live, uncomment this line:
draft: true
#draft: true
changelog:
sort: asc
use: github
Expand Down
9 changes: 8 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
# v1.3.0
## Features

### StoreTypes
- Added `--output-to-integration-manifest` flag to `kfutil store-types get` to download a remote certificate store type definition into an `integration-manifest.json` file locally.
- Updated usage: `kfutil store-types get [-i <store-type-id> | -n <store-type-name>] [-b <git-ref>] [-g | --output-to-integration-manifest]`

# v1.2.1

## Bug Fixes
Expand Down Expand Up @@ -68,4 +75,4 @@ Production Supported CLIs:

- `login`: [kfutil login](docs/kfutil_login.md)
- `store-types`: [kfutil store-types](docs/kfutil_store-types.md)
- `stores rot`: [kfutil rot](docs/kfutil_stores_rot.md)
- `stores rot`: [kfutil rot](docs/kfutil_stores_rot.md)
64 changes: 21 additions & 43 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,49 +1,18 @@
- [Keyfactor Command Utility (kfutil)](#keyfactor-command-utility--kfutil-)
- [Integration status: Production - Ready for use in production environments.](#integration-status--production---ready-for-use-in-production-environments)

* [Support for Keyfactor Command Utility (kfutil)](#support-for-keyfactor-command-utility--kfutil-)
* [Quickstart](#quickstart)
+ [Prerequisites:](#prerequisites-)
+ [Installation:](#installation-)
+ [Environmental Variables](#environmental-variables)
* [Authentication Providers](#authentication-providers)
* [Commands](#commands)
+ [Login](#login)
+ [Logout](#logout)
* [Commands](#commands-1)
+ [Bulk operations](#bulk-operations)
- [Bulk create cert stores](#bulk-create-cert-stores)
- [Bulk create cert store types](#bulk-create-cert-store-types)
+ [Root of Trust](#root-of-trust)
+ [Root of Trust Quickstart](#root-of-trust-quickstart)
- [Generate Certificate List Template](#generate-certificate-list-template)
- [Generate Certificate Store List Template](#generate-certificate-store-list-template)
- [Run Root of Trust Audit](#run-root-of-trust-audit)
- [Run Root of Trust Reconcile](#run-root-of-trust-reconcile)
+ [Certificate Store Inventory](#certificate-store-inventory)
- [Show the inventory of a certificate store](#show-the-inventory-of-a-certificate-store)
- [Add certificates to certificate stores](#add-certificates-to-certificate-stores)
- [Remove certificates from certificate stores](#remove-certificates-from-certificate-stores)
* [Development](#development)
+ [Adding a new command](#adding-a-new-command)

# Keyfactor Command Utility (kfutil)

`kfutil` is a go-lang CLI wrapper for Keyfactor Command API. It also includes other utility/helper functions around
automating common Keyfactor Command operations.
`kfutil` is a go-lang CLI wrapper for Keyfactor Command API. It also includes other utility/helper functions around automating common Keyfactor Command operations.

#### Integration status: Production - Ready for use in production environments.



## Support for Keyfactor Command Utility (kfutil)

Keyfactor Command Utility (kfutil) is open source and there is **no SLA** for this tool/library/client. Keyfactor will
address issues as resources become available. Keyfactor customers may request escalation by opening up a support ticket
through their Keyfactor representative.
Keyfactor Command Utility (kfutil) is open source and there is **no SLA** for this tool/library/client. Keyfactor will address issues as resources become available. Keyfactor customers may request escalation by opening up a support ticket through their Keyfactor representative.

###### To report a problem or suggest a new feature, use the **[Issues](../../issues)** tab. If you want to contribute actual bug fixes or proposed enhancements, use the **[Pull requests](../../pulls)** tab.

###### To report a problem or suggest a new feature, use the **[Issues](../../issues)

** tab. If you want to contribute actual bug fixes or proposed enhancements, use the **[Pull requests](../../pulls)
** tab.

## Quickstart

Expand All @@ -54,14 +23,26 @@ through their Keyfactor representative.
- OR [wget](https://www.gnu.org/software/wget/) CLI tool, used to download the release files.
- [unzip](https://linuxize.com/post/how-to-unzip-files-in-linux/#installing-unzip) CLI tool, used to unzip the release
- [openssl](https://www.openssl.org/source/) CLI tool, used to validate package checksum.
- `$HOME/.local/bin` in your `$PATH` and exists.
- `$HOME/.local/bin` in your `$PATH` and exists if not running as root, else `/usr/local/bin` if running as root.

### Installation:

#### Linux/MacOS
```bash
bash <(curl -s https://raw.githubusercontent.com/Keyfactor/kfutil/main/install.sh)
curl -fsSL -o get-kfutil.sh https://raw.githubusercontent.com/Keyfactor/kfutil/main/install.sh
chmod +x get-kfutil.sh
# Install kfutil to $HOME/.local/bin. Use -h for help and examples.
./get-kfutil.sh
````

#### Windows (or Linux/MacOS if PowerShell is preferred)
```powershell
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/Keyfactor/kfutil/main/install.ps1" -OutFile "install.ps1"
# Install kfutil to $HOME/AppData/Local/Microsoft/WindowsApps.
# Use Get-Help .\install.ps1 -Full for help and examples.
.\install.ps1
```

### Environmental Variables

All the variables listed below need to be set in your environment. The `kfutil` command will look for these variables
Expand Down Expand Up @@ -130,10 +111,7 @@ For full documentation on the `login` command, see the [login](docs/kfutil_login

*WARNING* - The `login` command will store your Keyfactor credentials in a file on your local machine. This file is not
encrypted and is not secure. It is recommended that you use the `login` command only on your local machine and not on a
shared machine. Instead of using the `login` command, you can set the environmental variables listed above. **You may
also
choose to use login and provide an empty password, in this mode you will be prompted for your password each time you run
a command.**
shared machine. Instead of using the `login` command, you can set the environmental variables listed above.

```bash
kfutil login
Expand Down
Loading
Loading