-
Notifications
You must be signed in to change notification settings - Fork 71
/
types.go
63 lines (53 loc) · 2.04 KB
/
types.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/*
Copyright 2020 The Kubernetes Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package audit
import (
reg "sigs.k8s.io/k8s-container-image-promoter/lib/dockerregistry"
"sigs.k8s.io/k8s-container-image-promoter/lib/logclient"
"sigs.k8s.io/k8s-container-image-promoter/lib/remotemanifest"
"sigs.k8s.io/k8s-container-image-promoter/lib/report"
"sigs.k8s.io/k8s-container-image-promoter/lib/stream"
)
// GcrReadingFacility holds functions used to create streams for reading the
// repository and manifest list.
//
// nolint[lll]
type GcrReadingFacility struct {
ReadRepo func(*reg.SyncContext, reg.RegistryContext) stream.Producer
ReadManifestList func(*reg.SyncContext, reg.GCRManifestListContext) stream.Producer
}
// ServerContext holds all of the initialization data for the server to start
// up.
type ServerContext struct {
ID string
RemoteManifestFacility remotemanifest.Facility
ErrorReportingFacility report.ReportingFacility
LoggingFacility logclient.LoggingFacility
GcrReadingFacility GcrReadingFacility
}
// PubSubMessageInner is the inner struct that holds the actual Pub/Sub
// information.
type PubSubMessageInner struct {
Data []byte `json:"data,omitempty"`
ID string `json:"id"`
}
// PubSubMessage is the payload of a Pub/Sub event.
type PubSubMessage struct {
Message PubSubMessageInner `json:"message"`
Subscription string `json:"subscription"`
}
const (
// LogName is the auditing log name to use. This is the name that comes up
// for "gcloud logging logs list".
LogName = "cip-audit-log"
)