mirror of
https://github.com/edgelesssys/constellation.git
synced 2025-05-02 22:34:56 -04:00
Add image update API and use for "upgrade plan"
This commit is contained in:
parent
954cbad214
commit
ebf852b3ba
9 changed files with 806 additions and 394 deletions
|
@ -23,11 +23,20 @@ import (
|
|||
|
||||
func TestUpgradeExecute(t *testing.T) {
|
||||
testCases := map[string]struct {
|
||||
upgrader stubUpgrader
|
||||
wantErr bool
|
||||
upgrader stubUpgrader
|
||||
imageFetcher stubImageFetcher
|
||||
wantErr bool
|
||||
}{
|
||||
"success": {
|
||||
upgrader: stubUpgrader{},
|
||||
imageFetcher: stubImageFetcher{
|
||||
reference: "someReference",
|
||||
},
|
||||
},
|
||||
"fetch error": {
|
||||
imageFetcher: stubImageFetcher{
|
||||
fetchReferenceErr: errors.New("error"),
|
||||
},
|
||||
wantErr: true,
|
||||
},
|
||||
"upgrade error": {
|
||||
upgrader: stubUpgrader{err: errors.New("error")},
|
||||
|
@ -46,7 +55,7 @@ func TestUpgradeExecute(t *testing.T) {
|
|||
cfg := defaultConfigWithExpectedMeasurements(t, config.Default(), cloudprovider.Azure)
|
||||
require.NoError(handler.WriteYAML(constants.ConfigFilename, cfg))
|
||||
|
||||
err := upgradeExecute(cmd, tc.upgrader, handler)
|
||||
err := upgradeExecute(cmd, &tc.imageFetcher, tc.upgrader, handler)
|
||||
if tc.wantErr {
|
||||
assert.Error(err)
|
||||
} else {
|
||||
|
@ -60,6 +69,15 @@ type stubUpgrader struct {
|
|||
err error
|
||||
}
|
||||
|
||||
func (u stubUpgrader) Upgrade(context.Context, string, measurements.M) error {
|
||||
func (u stubUpgrader) Upgrade(context.Context, string, string, measurements.M) error {
|
||||
return u.err
|
||||
}
|
||||
|
||||
type stubImageFetcher struct {
|
||||
reference string
|
||||
fetchReferenceErr error
|
||||
}
|
||||
|
||||
func (f *stubImageFetcher) FetchReference(_ context.Context, _ *config.Config) (string, error) {
|
||||
return f.reference, f.fetchReferenceErr
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue