zero: bootstrap config (#4444)

This commit is contained in:
Denis Mishin 2023-08-16 12:47:46 -04:00 committed by GitHub
parent 65c0f6b70f
commit 788376bf60
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 695 additions and 28 deletions

View file

@ -0,0 +1,33 @@
package bootstrap_test
import (
"os"
"testing"
"github.com/stretchr/testify/require"
"github.com/pomerium/pomerium/internal/zero/bootstrap"
"github.com/pomerium/pomerium/pkg/cryptutil"
cluster_api "github.com/pomerium/zero-sdk/cluster"
)
func TestFile(t *testing.T) {
cipher, err := cryptutil.NewAEADCipher(cryptutil.NewKey())
require.NoError(t, err)
txt := "test"
src := cluster_api.BootstrapConfig{
DatabrokerStorageConnection: &txt,
}
fd, err := os.CreateTemp(t.TempDir(), "test.data")
require.NoError(t, err)
require.NoError(t, fd.Close())
require.NoError(t, bootstrap.SaveBootstrapConfigToFile(&src, fd.Name(), cipher))
dst, err := bootstrap.LoadBootstrapConfigFromFile(fd.Name(), cipher)
require.NoError(t, err)
require.Equal(t, src, *dst)
}