feat: enable Google Photos Library API in Terraform and create gdrive-to-gphotos sync Job

This commit is contained in:
Moritz Graf 2026-07-18 21:41:33 +02:00
parent b4cf4c0961
commit 2b0575364b
5 changed files with 158 additions and 3 deletions

View File

@ -0,0 +1,28 @@
apiVersion: batch/v1
kind: Job
metadata:
name: gdrive-to-gphotos
namespace: backup
spec:
template:
spec:
containers:
- name: sync-agent
image: iptizer/swiss
volumeMounts:
- name: rclone-gdrive-config
mountPath: /rclone.conf
subPath: "rclone.conf"
command:
- "/bin/bash"
- "-c"
args:
- |
echo "Starting copy operation from Google Drive to Google Photos..."
cd /home/devbox && devbox run rclone --config /rclone.conf -v --stats 10s --stats-one-line copy --drive-root-folder-id="1f43AtWvfb7qd-eGr9nw-8vHraA5k9mVl" gdrive: "gphotos:album/All pictures of the last years"
volumes:
- name: rclone-gdrive-config
configMap:
name: rclone-gdrive-config
restartPolicy: Never
backoffLimit: 1

View File

@ -11,6 +11,13 @@ data:
client_id = 510142397622-ife8ab809cirgb2f3t1gk6gmj0p3ehrb.apps.googleusercontent.com client_id = 510142397622-ife8ab809cirgb2f3t1gk6gmj0p3ehrb.apps.googleusercontent.com
client_secret = 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 client_secret = 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
scope = drive scope = drive
token = {"access_token":"ya29.a0AZYkNZjtwgj_7XaZtlsrUuXbJcYJSE2Zl4WEFlhaqSIDT3csW05ZrKcZqvsF_6Ql45C-391judgNE8DUKAAqkf2-6zyrXXPlz99lQWSuuEovtfF2A9shiQb6_oYGIT8FrW3xnFNkpz1HVY_xbeJ_PRxLpeA0V1XeKFNHJ4KTaCgYKAfESARISFQHGX2MiNcnE9tRt0XzNPF6o-HumWQ0175","token_type":"Bearer","refresh_token":"1//0918ME0bkQh3uCgYIARAAGAkSNwF-L9Irikk_ba5HNHLu5UTWvO4n_EslCc5SDbDX4_KzbUpDRBhd_v3W-wFC0LU0Uf4VbD2u42I","expiry":"2025-04-21T17:40:48.191375+02:00"} token = {"access_token":"ya29.a0ARGnu0YmJeV8Trm4A1gJgGC3exlstFs129WPux6-xwkqecyyPkhsIDGhmBJJhhCuylATzGRLlPaE-mj2x8gZPlGC85qrInSAAmP9bY53eBkfzeF3E9cETg2kaR5xkS0-das6v2gy7R9Dq_wo0yYGClv6J56VzksCdRtENOau3G_NKY-iL6Q63HGwP6RyN0NM7hKx9pkaCgYKARESARISFQHGX2Miw0_XCkFbRIwLBjzvClPCyQ0206","token_type":"Bearer","refresh_token":"1//03GEaMgtFsVCDCgYIARAAGAMSNwF-L9IrVZhVXkWbq6INTYCxGHpC_bF4SFvJJhfM1liCJCmBfyGk-tguYoceGPEPwEn28HbBQiQ","expiry":"2026-07-18T22:12:35.929827+02:00","expires_in":3599}
team_drive = team_drive =
# Google Photos API credentials belong to project: default-api-key-project (Project Number: 510142397622)
[gphotos]
type = google photos
client_id = 510142397622-ife8ab809cirgb2f3t1gk6gmj0p3ehrb.apps.googleusercontent.com
client_secret = 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
token = {"access_token":"ya29.a0ARGnu0aRExzvH1CNICKilmDMjjNIbH1H5qRKuuIvhbgOUifU_kKs5KxssTNodx6djqkFRU-NIeRw7oAkPPWY4VAcIO5zpmyEMd3VIF3CjY2u9vDVUgLc8NEuQMt9-zi01mPUi0AXc1o74Ye1OzS1wa5hxIIdiGJa4M_qOY9m3z2zUd2YUrLwx4IsJR0OBgl1E-qg_HUaCgYKAT4SARISFQHGX2MiYL5GLbjZZ822Wf5iqIGiWg0206","token_type":"Bearer","refresh_token":"1//03evlOJXMLFW5CgYIARAAGAMSNwF-L9IrBQkl-7meHL_WGfNZ8LFiCvu6my79XK8OzyaldVlcqXuEco93RUFFLsOHyDTqrIcJMY0","expiry":"2026-07-18T21:21:29.116745+02:00","expires_in":3599}

View File

@ -54,3 +54,9 @@ output "velero_backup_sa_email" {
value = google_service_account.velero_backup_sa.email value = google_service_account.velero_backup_sa.email
description = "The email address of the Google Cloud Service Account. Share your Google Drive backup folder with this email address and grant it Editor access." description = "The email address of the Google Cloud Service Account. Share your Google Drive backup folder with this email address and grant it Editor access."
} }
resource "google_project_service" "photos_api" {
project = "default-api-key-project"
service = "photoslibrary.googleapis.com"
disable_on_destroy = false
}

View File

@ -1,7 +1,7 @@
{ {
"version": 4, "version": 4,
"terraform_version": "1.14.3", "terraform_version": "1.14.3",
"serial": 221, "serial": 229,
"lineage": "8aff5d23-05f6-10eb-0ae6-1084c787677e", "lineage": "8aff5d23-05f6-10eb-0ae6-1084c787677e",
"outputs": { "outputs": {
"velero_backup_sa_email": { "velero_backup_sa_email": {
@ -104,6 +104,28 @@
} }
] ]
}, },
{
"mode": "managed",
"type": "google_project_service",
"name": "photos_api",
"provider": "provider[\"registry.terraform.io/hashicorp/google\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"disable_dependent_services": null,
"disable_on_destroy": false,
"id": "default-api-key-project/photoslibrary.googleapis.com",
"project": "default-api-key-project",
"service": "photoslibrary.googleapis.com",
"timeouts": null
},
"sensitive_attributes": [],
"identity_schema_version": 0,
"private": "eyJlMmJmYjczMC1lY2FhLTExZTYtOGY4OC0zNDM2M2JjN2M0YzAiOnsiY3JlYXRlIjoxMjAwMDAwMDAwMDAwLCJkZWxldGUiOjEyMDAwMDAwMDAwMDAsInJlYWQiOjYwMDAwMDAwMDAwMCwidXBkYXRlIjoxMjAwMDAwMDAwMDAwfX0="
}
]
},
{ {
"mode": "managed", "mode": "managed",
"type": "google_service_account", "type": "google_service_account",

View File

@ -1,7 +1,7 @@
{ {
"version": 4, "version": 4,
"terraform_version": "1.14.3", "terraform_version": "1.14.3",
"serial": 218, "serial": 226,
"lineage": "8aff5d23-05f6-10eb-0ae6-1084c787677e", "lineage": "8aff5d23-05f6-10eb-0ae6-1084c787677e",
"outputs": { "outputs": {
"velero_backup_sa_email": { "velero_backup_sa_email": {
@ -137,6 +137,98 @@
} }
] ]
}, },
{
"mode": "managed",
"type": "google_service_account_key",
"name": "velero_backup_sa_key",
"provider": "provider[\"registry.terraform.io/hashicorp/google\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"id": "projects/velero-backup-dc8c8f74/serviceAccounts/velero-backup-sa@velero-backup-dc8c8f74.iam.gserviceaccount.com/keys/069aa702ed55bb6d3c325a45535ee51bc87de092",
"keepers": null,
"key_algorithm": "KEY_ALG_RSA_2048",
"name": "projects/velero-backup-dc8c8f74/serviceAccounts/velero-backup-sa@velero-backup-dc8c8f74.iam.gserviceaccount.com/keys/069aa702ed55bb6d3c325a45535ee51bc87de092",
"private_key": "ewogICJ0eXBlIjogInNlcnZpY2VfYWNjb3VudCIsCiAgInByb2plY3RfaWQiOiAidmVsZXJvLWJhY2t1cC1kYzhjOGY3NCIsCiAgInByaXZhdGVfa2V5X2lkIjogIjA2OWFhNzAyZWQ1NWJiNmQzYzMyNWE0NTUzNWVlNTFiYzg3ZGUwOTIiLAogICJwcml2YXRlX2tleSI6ICItLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS1cbk1JSUV2QUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktZd2dnU2lBZ0VBQW9JQkFRRGtacWNsaXV2MWVSQk9cblVIN2twTER0RzEwd3VnMHptaE8wMTlDSFBMNVhGYkR2aW9LWlliTVZKV25XY29CUFJEZmNXQS9NTVhOeXJPSUdcbkdpWndMVFkyek5pdGRGQ3BweVY3ZTR1Zjk1ak9HREdwWkZGZ1hNSEc5RndFb3RNQlJQNTVTNnVMU3lXbW1idE5cbkdDRkoxV0h0a2plREp1SUpsb0xlL1BFV2NhR0FWcjE1VlBSNGQwMlRVZEFZcHJJZGJuRm90MnJ4U1RHS2IzZktcbi9PRm41SkdoeURyejR3Nkg1ME1ZWVQvVFI4ZWVSVTZoRHlsWVpja1FJK0dKcWp6eCtXMVZyY2dKdUs0MTN5bzhcbmY3RnBlRGpQZldGS2NGdHZNUk5SemtTRzd2VS9EbnUxQ0IxQUhYWEp0SE5HaGJXV2s2K0NPZ2tzTUV4UldFOFNcbmt4cEUxMjc1QWdNQkFBRUNnZ0VBR0FzaVgxWmZmb2pQQ1o5NXJESVdHZSsrZ0ttbFNDQlpJTGx6VHprNnhFb1pcblJTNHNqMTcwamk1UkZPMGF5cjFnc0FacEsxS3RWNDRSZ1JqeG9POXhmSlZWM2ZTWHBUUmVRc0IvczBoS1FxL1RcblVvU24rRi9yV2psUkVuL2RmSTI1eUNVS0d2Qy9OdW1LQ1JTWU5JQ00vWWhkNWFXTE4vMHJLN1F1NFBEM1VsNGNcblRFU2o2QVFUbzlycGJPc0ZzRmF3QkJhSnJ4eUhQOS80aWhINGxJbW1CM3crOEFQRDhkbmdsRCtYaDJHVEpPc0lcbklXWlZ3KzgrdEUrV3JDL2dyUE9hUW9UdW9nNVA2QVFzTzMrM1RCRGlqOXRxUWpHMHlWaThXa1FUWm1NYkNmYlpcbm10Q29GUTRrRUwwSURqclEwWFF3Z2h5OW5vU1djaUdRdEcwaFhtWVdIUUtCZ1FEMGROVExYNmVFV2x6M0xCK3Jcbmc0VjZxdXBHVmxyN3EzbCtGS2U1eUgxVkJ0OGdMWHJmU2lMNUlLTmRoTTc1bkFDcUN1dmI4dmpYbUhmRFlhcFJcbklNY29FYWJKUjVGVENjZzJQSW4xWGlvQWgySFNJTGdPTUxaeHg4WG5lL0lJYm1MYTNQMjFnUkx5TXFTWnl3aFJcbndLb1hzRklrMEF3akloVUJSa3FOak5YT3R3S0JnUUR2TDd0ODVaclk2OVAxMWlLcW1abGt4WCsvSVl2VHE5dEhcbnZ4SW5IeFJSclVTckplVFQ3NFBiQTMrTmhMZmQ2TTVyTkF3YXZFRlJxak55YnlaeGNmaE5ScnFmcDNCWXY0TWNcblBGOHBvUE5iNmU1dTI0QUM2c2lrQm5rYlBEOUJtZ1FrNGVhLzJUcnZGOUdxaUZWakZWMW5wT0xSZ0FRUWw5M2Ncbkk5eVRrRnYvendLQmdHVkNlOTdlZVpxR2Y5blhDaXRXcUpUZWRYcTdUS2JSS2R0REhSTUU3SDJyQWdQbk11MkpcblhTRkxGc0NuUWNEOWtQemUxMEpkekJ3cVNQbkMyL1VOR2RJTU5jVk1ndk1kcXpSa01WVlZNeHJTK1g4OEZHRzBcblplNk5yUG10U3QyWk5CT3ExT0U1WFNxOE5aaUxGS0FncVpSMGNpSlRsNk41KzY5eWVYRlc5RDNUQW9HQUVUY2hcblNuc0lLeWJHS2NLUTJqQ1Yvcy9NUXdoNkZQRWdwa2hWV1NWK2crWnhzOVBWWlgrdXdOdSttWVA4NitidXZINlJcbmhIY2FTSE4wb243bmlIRElpMTlVM1ZyaTFqQnFrbVN5QU1BSjVBcXhVNTlPMW1icHJBeWZPTnVjUGUrRTd0YW5cbmtoVmpqWVBzWGxiVHRuNzZLeFNPRXNBaENzU3pmajNDaVloeFpyY0NnWUF3cG45ME84MmZwZE9FVUo1bnNpbElcbktjVEI2dU1XTW5XbWN0cEpEQ05iVlRVNWk0SmxYd0wzaGkzdCtjZENjWk4vMHJKU0lXT3psT29lYWg0MGw1MUhcbkpQclZ0M2lhSmdQanVJMVFHYjhyc3JPNnpMNDRvb0pHWHo1U2sxRi9NOXBnY2dKWlR3akpXV3VpN1pET0VPUzJcblVLN3NwNGJaU0dXZE1iOUY5SUxKcWc9PVxuLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLVxuIiwKICAiY2xpZW50X2VtYWlsIjogInZlbGVyby1iYWNrdXAtc2FAdmVsZXJvLWJhY2t1cC1kYzhjOGY3NC5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIsCiAgImNsaWVudF9pZCI6ICIxMTA3NzI2MTcyNTA0Mjc1NzgwMjYiLAogICJhdXRoX3VyaSI6ICJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20vby9vYXV0aDIvYXV0aCIsCiAgInRva2VuX3VyaSI6ICJodHRwczovL29hdXRoMi5nb29nbGVhcGlzLmNvbS90b2tlbiIsCiAgImF1dGhfcHJvdmlkZXJfeDUwOV9jZXJ0X3VybCI6ICJodHRwczovL3d3dy5nb29nbGVhcGlzLmNvbS9vYXV0aDIvdjEvY2VydHMiLAogICJjbGllbnRfeDUwOV9jZXJ0X3VybCI6ICJodHRwczovL3d3dy5nb29nbGVhcGlzLmNvbS9yb2JvdC92MS9tZXRhZGF0YS94NTA5L3ZlbGVyby1iYWNrdXAtc2ElNDB2ZWxlcm8tYmFja3VwLWRjOGM4Zjc0LmlhbS5nc2VydmljZWFjY291bnQuY29tIiwKICAidW5pdmVyc2VfZG9tYWluIjogImdvb2dsZWFwaXMuY29tIgp9Cg==",
"private_key_type": "TYPE_GOOGLE_CREDENTIALS_FILE",
"public_key": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUMvRENDQWVTZ0F3SUJBZ0lJWWRxRUo0cmJOMzB3RFFZSktvWklodmNOQVFFRkJRQXdJREVlTUJ3R0ExVUUKQXd3Vk1URXdOemN5TmpFM01qVXdOREkzTlRjNE1ESTJNQ0FYRFRJMk1EWXpNREUzTURZeU9Gb1lEems1T1RreApNak14TWpNMU9UVTVXakFnTVI0d0hBWURWUVFEREJVeE1UQTNOekkyTVRjeU5UQTBNamMxTnpnd01qWXdnZ0VpCk1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRRGtacWNsaXV2MWVSQk9VSDdrcExEdEcxMHcKdWcwem1oTzAxOUNIUEw1WEZiRHZpb0taWWJNVkpXbldjb0JQUkRmY1dBL01NWE55ck9JR0dpWndMVFkyek5pdApkRkNwcHlWN2U0dWY5NWpPR0RHcFpGRmdYTUhHOUZ3RW90TUJSUDU1UzZ1TFN5V21tYnROR0NGSjFXSHRramVECkp1SUpsb0xlL1BFV2NhR0FWcjE1VlBSNGQwMlRVZEFZcHJJZGJuRm90MnJ4U1RHS2IzZksvT0ZuNUpHaHlEcnoKNHc2SDUwTVlZVC9UUjhlZVJVNmhEeWxZWmNrUUkrR0pxanp4K1cxVnJjZ0p1SzQxM3lvOGY3RnBlRGpQZldGSwpjRnR2TVJOUnprU0c3dlUvRG51MUNCMUFIWFhKdEhOR2hiV1drNitDT2drc01FeFJXRThTa3hwRTEyNzVBZ01CCkFBR2pPREEyTUF3R0ExVWRFd0VCL3dRQ01BQXdEZ1lEVlIwUEFRSC9CQVFEQWdlQU1CWUdBMVVkSlFFQi93UU0KTUFvR0NDc0dBUVVGQndNQ01BMEdDU3FHU0liM0RRRUJCUVVBQTRJQkFRREsrZG8yUElZcitSUnUrVDFXdzU3agpNV1U4bC9ZWmlZYjZHVHdSSTl5aGVUZ0JMd0ZxbS9Hckw4RHFhSHd1eXlHcCtIZHIzRENqRDZLQmd3ZFE1WFdRCmxCNlN5dExOVmJGKzRKN1lick1zbWJvSWg4RDRaUDZMQjNNTDM0dmc2eHg1Mmt5QU9JeDg0S1Z3TXh6RjJBaXYKUFZWQkxwWGtBcE53WlJnMy9uYWZnMVl1VW0xWXBqQVpaVDdrLzRZVGJPL0dmS0ZNLzlDT0M5OENidFNUUjJoVgpLZFlHK3hWek52VjYvTGdtUjFoRXF2Q2xKOG00Y3RzdTk4dURleGNDZ21TaXc3Z3Mzc240cDBhNE90OWdtTFh3Ckxva3dPMnFBdGhBN3YvU0ZaQ050Y2p6VGRha1did1YyeWU5QldGcWNpZExEbnk5cFpwd0w4STRHNTZ2MW1LbVIKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=",
"public_key_data": null,
"public_key_type": "TYPE_X509_PEM_FILE",
"service_account_id": "projects/velero-backup-dc8c8f74/serviceAccounts/velero-backup-sa@velero-backup-dc8c8f74.iam.gserviceaccount.com",
"valid_after": "2026-06-30T17:06:28Z",
"valid_before": "9999-12-31T23:59:59Z"
},
"sensitive_attributes": [
[
{
"type": "get_attr",
"value": "private_key"
}
]
],
"identity_schema_version": 0,
"private": "bnVsbA==",
"dependencies": [
"google_project.backup_project",
"google_project_organization_policy.allow_key_creation",
"google_project_service.drive_api",
"google_service_account.velero_backup_sa",
"random_id.project_suffix"
]
}
]
},
{
"mode": "managed",
"type": "local_file",
"name": "gdrive_sa_key_file",
"provider": "provider[\"registry.terraform.io/hashicorp/local\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"content": "{\n \"type\": \"service_account\",\n \"project_id\": \"velero-backup-dc8c8f74\",\n \"private_key_id\": \"069aa702ed55bb6d3c325a45535ee51bc87de092\",\n \"private_key\": \"-----BEGIN PRIVATE KEY-----\\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDkZqcliuv1eRBO\\nUH7kpLDtG10wug0zmhO019CHPL5XFbDvioKZYbMVJWnWcoBPRDfcWA/MMXNyrOIG\\nGiZwLTY2zNitdFCppyV7e4uf95jOGDGpZFFgXMHG9FwEotMBRP55S6uLSyWmmbtN\\nGCFJ1WHtkjeDJuIJloLe/PEWcaGAVr15VPR4d02TUdAYprIdbnFot2rxSTGKb3fK\\n/OFn5JGhyDrz4w6H50MYYT/TR8eeRU6hDylYZckQI+GJqjzx+W1VrcgJuK413yo8\\nf7FpeDjPfWFKcFtvMRNRzkSG7vU/Dnu1CB1AHXXJtHNGhbWWk6+COgksMExRWE8S\\nkxpE1275AgMBAAECggEAGAsiX1ZffojPCZ95rDIWGe++gKmlSCBZILlzTzk6xEoZ\\nRS4sj170ji5RFO0ayr1gsAZpK1KtV44RgRjxoO9xfJVV3fSXpTReQsB/s0hKQq/T\\nUoSn+F/rWjlREn/dfI25yCUKGvC/NumKCRSYNICM/Yhd5aWLN/0rK7Qu4PD3Ul4c\\nTESj6AQTo9rpbOsFsFawBBaJrxyHP9/4ihH4lImmB3w+8APD8dnglD+Xh2GTJOsI\\nIWZVw+8+tE+WrC/grPOaQoTuog5P6AQsO3+3TBDij9tqQjG0yVi8WkQTZmMbCfbZ\\nmtCoFQ4kEL0IDjrQ0XQwghy9noSWciGQtG0hXmYWHQKBgQD0dNTLX6eEWlz3LB+r\\ng4V6qupGVlr7q3l+FKe5yH1VBt8gLXrfSiL5IKNdhM75nACqCuvb8vjXmHfDYapR\\nIMcoEabJR5FTCcg2PIn1XioAh2HSILgOMLZxx8Xne/IIbmLa3P21gRLyMqSZywhR\\nwKoXsFIk0AwjIhUBRkqNjNXOtwKBgQDvL7t85ZrY69P11iKqmZlkxX+/IYvTq9tH\\nvxInHxRRrUSrJeTT74PbA3+NhLfd6M5rNAwavEFRqjNybyZxcfhNRrqfp3BYv4Mc\\nPF8poPNb6e5u24AC6sikBnkbPD9BmgQk4ea/2TrvF9GqiFVjFV1npOLRgAQQl93c\\nI9yTkFv/zwKBgGVCe97eeZqGf9nXCitWqJTedXq7TKbRKdtDHRME7H2rAgPnMu2J\\nXSFLFsCnQcD9kPze10JdzBwqSPnC2/UNGdIMNcVMgvMdqzRkMVVVMxrS+X88FGG0\\nZe6NrPmtSt2ZNBOq1OE5XSq8NZiLFKAgqZR0ciJTl6N5+69yeXFW9D3TAoGAETch\\nSnsIKybGKcKQ2jCV/s/MQwh6FPEgpkhVWSV+g+Zxs9PVZX+uwNu+mYP86+buvH6R\\nhHcaSHN0on7niHDIi19U3Vri1jBqkmSyAMAJ5AqxU59O1mbprAyfONucPe+E7tan\\nkhVjjYPsXlbTtn76KxSOEsAhCsSzfj3CiYhxZrcCgYAwpn90O82fpdOEUJ5nsilI\\nKcTB6uMWMnWmctpJDCNbVTU5i4JlXwL3hi3t+cdCcZN/0rJSIWOzlOoeah40l51H\\nJPrVt3iaJgPjuI1QGb8rsrO6zL44ooJGXz5Sk1F/M9pgcgJZTwjJWWui7ZDOEOS2\\nUK7sp4bZSGWdMb9F9ILJqg==\\n-----END PRIVATE KEY-----\\n\",\n \"client_email\": \"velero-backup-sa@velero-backup-dc8c8f74.iam.gserviceaccount.com\",\n \"client_id\": \"110772617250427578026\",\n \"auth_uri\": \"https://accounts.google.com/o/oauth2/auth\",\n \"token_uri\": \"https://oauth2.googleapis.com/token\",\n \"auth_provider_x509_cert_url\": \"https://www.googleapis.com/oauth2/v1/certs\",\n \"client_x509_cert_url\": \"https://www.googleapis.com/robot/v1/metadata/x509/velero-backup-sa%40velero-backup-dc8c8f74.iam.gserviceaccount.com\",\n \"universe_domain\": \"googleapis.com\"\n}\n",
"content_base64": null,
"content_base64sha256": "gjWa6Ybyx03eN9NFF61rxtnJA7qU2cVs8DYq88edE2w=",
"content_base64sha512": "SQ6O7L8ylOgmpJI65GXpYW4u4Ken/WmdvKHYdFzSyzvTY5I73F+LWKTqKJqhCjNNAzN6heHtm9J0u6KU056nhQ==",
"content_md5": "7754550fa246ffcc9a01ec63e85191ac",
"content_sha1": "a78f85be2f699453aeb2dec074c940b397108b9b",
"content_sha256": "82359ae986f2c74dde37d34517ad6bc6d9c903ba94d9c56cf0362af3c79d136c",
"content_sha512": "490e8eecbf3294e826a4923ae465e9616e2ee0a7a7fd699dbca1d8745cd2cb3bd363923bdc5f8b58a4ea289aa10a334d03337a85e1ed9bd274bba294d39ea785",
"directory_permission": "0777",
"file_permission": "0777",
"filename": "./../k8s/velero/gdrive_sa.json.secret",
"id": "a78f85be2f699453aeb2dec074c940b397108b9b",
"sensitive_content": null,
"source": null
},
"sensitive_attributes": [
[
{
"type": "get_attr",
"value": "content"
}
],
[
{
"type": "get_attr",
"value": "sensitive_content"
}
]
],
"identity_schema_version": 0,
"dependencies": [
"google_project.backup_project",
"google_project_organization_policy.allow_key_creation",
"google_project_service.drive_api",
"google_service_account.velero_backup_sa",
"google_service_account_key.velero_backup_sa_key",
"random_id.project_suffix"
]
}
]
},
{ {
"mode": "managed", "mode": "managed",
"type": "ovh_domain_zone_record", "type": "ovh_domain_zone_record",