2024-04-17 09:11:57 -07:00
|
|
|
// Copyright (c) Tailscale Inc & AUTHORS
|
|
|
|
// SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
|
|
|
|
//go:build (ts_aws || (linux && (arm64 || amd64))) && !ts_omit_aws
|
|
|
|
|
|
|
|
package store
|
|
|
|
|
|
|
|
import (
|
2025-01-24 11:15:28 -08:00
|
|
|
"tailscale.com/ipn"
|
2024-04-17 09:11:57 -07:00
|
|
|
"tailscale.com/ipn/store/awsstore"
|
2025-01-24 11:15:28 -08:00
|
|
|
"tailscale.com/types/logger"
|
2024-04-17 09:11:57 -07:00
|
|
|
)
|
|
|
|
|
|
|
|
func init() {
|
|
|
|
registerAvailableExternalStores = append(registerAvailableExternalStores, registerAWSStore)
|
|
|
|
}
|
|
|
|
|
|
|
|
func registerAWSStore() {
|
2025-01-24 11:15:28 -08:00
|
|
|
Register("arn:", func(logf logger.Logf, arg string) (ipn.StateStore, error) {
|
|
|
|
ssmARN, opts, err := awsstore.ParseARNAndOpts(arg)
|
|
|
|
if err != nil {
|
|
|
|
return nil, err
|
|
|
|
}
|
|
|
|
return awsstore.New(logf, ssmARN, opts...)
|
|
|
|
})
|
2024-04-17 09:11:57 -07:00
|
|
|
}
|