Skip to content

Commit e637c6b

Browse files
committed
Pass through program.Group where needed
1 parent b426fc2 commit e637c6b

File tree

6 files changed

+21
-8
lines changed

6 files changed

+21
-8
lines changed

cmd/bb_remote_asset/main.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,17 +43,17 @@ func main() {
4343
if err := util.UnmarshalConfigurationFromFile(os.Args[1], &config); err != nil {
4444
return util.StatusWrapf(err, "Failed to read configuration from %s", os.Args[1])
4545
}
46-
lifecycleState, grpcClientFactory, err := global.ApplyConfiguration(config.Global)
46+
lifecycleState, grpcClientFactory, err := global.ApplyConfiguration(config.Global, dependenciesGroup)
4747
if err != nil {
4848
return util.StatusWrap(err, "Failed to apply global configuration options")
4949
}
5050

51-
fetchAuthorizer, err := auth_configuration.DefaultAuthorizerFactory.NewAuthorizerFromConfiguration(config.FetchAuthorizer, grpcClientFactory)
51+
fetchAuthorizer, err := auth_configuration.DefaultAuthorizerFactory.NewAuthorizerFromConfiguration(config.FetchAuthorizer, dependenciesGroup, grpcClientFactory)
5252
if err != nil {
5353
return util.StatusWrap(err, "Failed to create Fetch Authorizer from Configuration")
5454
}
5555

56-
pushAuthorizer, err := auth_configuration.DefaultAuthorizerFactory.NewAuthorizerFromConfiguration(config.PushAuthorizer, grpcClientFactory)
56+
pushAuthorizer, err := auth_configuration.DefaultAuthorizerFactory.NewAuthorizerFromConfiguration(config.PushAuthorizer, dependenciesGroup, grpcClientFactory)
5757
if err != nil {
5858
return util.StatusWrap(err, "Failed to create Push Authorizer from Configuration")
5959
}
@@ -100,6 +100,7 @@ func main() {
100100
assetStore,
101101
contentAddressableStorageInfo.BlobAccess,
102102
grpcClientFactory,
103+
dependenciesGroup,
103104
int(config.MaximumMessageSizeBytes),
104105
fetchAuthorizer,
105106
)

pkg/configuration/new_asset_store.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,11 @@ func NewAssetStoreFromConfiguration(
2727
var assetStore storage.AssetStore
2828
switch backend := configuration.Backend.(type) {
2929
case *pb.AssetCacheConfiguration_BlobAccess:
30-
assetBlobAccessCreator := asset_configuration.NewAssetBlobAccessCreator(grpcClientFactory, maximumMessageSizeBytes)
30+
assetBlobAccessCreator := asset_configuration.NewAssetBlobAccessCreator(
31+
dependenciesGroup,
32+
grpcClientFactory,
33+
maximumMessageSizeBytes,
34+
)
3135

3236
assetBlobAccess, err := blobstore_configuration.NewBlobAccessFromConfiguration(
3337
dependenciesGroup,

pkg/configuration/new_fetcher.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import (
1111
"github.com/buildbarn/bb-storage/pkg/clock"
1212
"github.com/buildbarn/bb-storage/pkg/grpc"
1313
bb_http "github.com/buildbarn/bb-storage/pkg/http"
14+
"github.com/buildbarn/bb-storage/pkg/program"
1415

1516
"google.golang.org/grpc/codes"
1617
"google.golang.org/grpc/status"
@@ -22,6 +23,7 @@ func NewFetcherFromConfiguration(configuration *pb.FetcherConfiguration,
2223
assetStore storage.AssetStore,
2324
contentAddressableStorage blobstore.BlobAccess,
2425
grpcClientFactory grpc.ClientFactory,
26+
dependenciesGroup program.Group,
2527
maximumMessageSizeBytes int,
2628
authorizer auth.Authorizer,
2729
) (fetch.Fetcher, error) {
@@ -41,7 +43,10 @@ func NewFetcherFromConfiguration(configuration *pb.FetcherConfiguration,
4143
case *pb.FetcherConfiguration_Error:
4244
fetcher = fetch.NewErrorFetcher(backend.Error)
4345
case *pb.FetcherConfiguration_RemoteExecution:
44-
client, err := grpcClientFactory.NewClientFromConfiguration(backend.RemoteExecution.ExecutionClient)
46+
client, err := grpcClientFactory.NewClientFromConfiguration(
47+
backend.RemoteExecution.ExecutionClient,
48+
dependenciesGroup,
49+
)
4550
if err != nil {
4651
return nil, err
4752
}

pkg/storage/blobstore/BUILD.bazel

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ go_library(
2020
"@com_github_buildbarn_bb_storage//pkg/capabilities",
2121
"@com_github_buildbarn_bb_storage//pkg/digest",
2222
"@com_github_buildbarn_bb_storage//pkg/grpc",
23+
"@com_github_buildbarn_bb_storage//pkg/program",
2324
"@com_github_buildbarn_bb_storage//pkg/proto/configuration/blobstore",
2425
"@org_golang_google_grpc//codes",
2526
"@org_golang_google_grpc//status",

pkg/storage/blobstore/asset_blob_access_creator.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import (
1010
"github.com/buildbarn/bb-storage/pkg/capabilities"
1111
"github.com/buildbarn/bb-storage/pkg/digest"
1212
"github.com/buildbarn/bb-storage/pkg/grpc"
13+
"github.com/buildbarn/bb-storage/pkg/program"
1314
pb "github.com/buildbarn/bb-storage/pkg/proto/configuration/blobstore"
1415
"google.golang.org/grpc/codes"
1516
"google.golang.org/grpc/status"
@@ -24,7 +25,7 @@ type assetBlobAccessCreator struct {
2425

2526
// NewAssetBlobAccessCreator creates a new BlobAccessCreator suitable for creating BlobAccesses
2627
// used for storage of Assets.
27-
func NewAssetBlobAccessCreator(grpcClientFactory grpc.ClientFactory, maximumMessageSizeBytes int) configuration.BlobAccessCreator {
28+
func NewAssetBlobAccessCreator(terminationGroup program.Group, grpcClientFactory grpc.ClientFactory, maximumMessageSizeBytes int) configuration.BlobAccessCreator {
2829
return &assetBlobAccessCreator{
2930
grpcClientFactory: grpcClientFactory,
3031
maximumMessageSizeBytes: maximumMessageSizeBytes,
@@ -43,7 +44,7 @@ func (bac *assetBlobAccessCreator) GetStorageTypeName() string {
4344
return "asset"
4445
}
4546

46-
func (bac *assetBlobAccessCreator) NewCustomBlobAccess(config *pb.BlobAccessConfiguration, creator configuration.NestedBlobAccessCreator) (configuration.BlobAccessInfo, string, error) {
47+
func (bac *assetBlobAccessCreator) NewCustomBlobAccess(terminationGroup program.Group, config *pb.BlobAccessConfiguration, creator configuration.NestedBlobAccessCreator) (configuration.BlobAccessInfo, string, error) {
4748
return configuration.BlobAccessInfo{}, "", status.Error(codes.InvalidArgument, "Configuration did not contain a supported storage backend")
4849
}
4950

pkg/storage/blobstore/asset_blob_access_replicator.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import (
55
"github.com/buildbarn/bb-storage/pkg/blobstore/configuration"
66
"github.com/buildbarn/bb-storage/pkg/blobstore/replication"
77
"github.com/buildbarn/bb-storage/pkg/digest"
8+
"github.com/buildbarn/bb-storage/pkg/program"
89
pb "github.com/buildbarn/bb-storage/pkg/proto/configuration/blobstore"
910
"google.golang.org/grpc/codes"
1011
"google.golang.org/grpc/status"
@@ -16,7 +17,7 @@ func (brc assetBlobReplicatorCreator) GetDigestKeyFormat() digest.KeyFormat {
1617
return digest.KeyWithInstance
1718
}
1819

19-
func (brc assetBlobReplicatorCreator) NewCustomBlobReplicator(configuration *pb.BlobReplicatorConfiguration, source blobstore.BlobAccess, sink configuration.BlobAccessInfo) (replication.BlobReplicator, error) {
20+
func (brc assetBlobReplicatorCreator) NewCustomBlobReplicator(terminationGroup program.Group, configuration *pb.BlobReplicatorConfiguration, source blobstore.BlobAccess, sink configuration.BlobAccessInfo) (replication.BlobReplicator, error) {
2021
return nil, status.Error(codes.InvalidArgument, "Configuration did not contain a supported replicator")
2122
}
2223

0 commit comments

Comments
 (0)