Cloud Storage 버킷에서 라벨을 삭제합니다.
이 코드 샘플이 포함된 문서 페이지
컨텍스트에서 사용된 코드 샘플을 보려면 다음 문서를 참조하세요.
코드 샘플
C++
자세한 내용은 Cloud Storage C++ API 참조 문서를 확인하세요.
namespace gcs = google::cloud::storage;
using ::google::cloud::StatusOr;
[](gcs::Client client, std::string const& bucket_name,
std::string const& label_key) {
StatusOr<gcs::BucketMetadata> updated_metadata = client.PatchBucket(
bucket_name, gcs::BucketMetadataPatchBuilder().ResetLabel(label_key));
if (!updated_metadata) {
throw std::runtime_error(updated_metadata.status().message());
}
std::cout << "Successfully reset label " << label_key << " on bucket "
<< updated_metadata->name() << ".";
if (updated_metadata->labels().empty()) {
std::cout << " The bucket now has no labels.\n";
return;
}
std::cout << " The bucket labels are now:";
for (auto const& kv : updated_metadata->labels()) {
std::cout << "\n " << kv.first << ": " << kv.second;
}
std::cout << "\n";
}
Go
자세한 내용은 Cloud Storage Go API 참조 문서를 확인하세요.
import (
"context"
"fmt"
"io"
"time"
"cloud.google.com/go/storage"
)
// removeBucketLabel removes a label on a bucket.
func removeBucketLabel(w io.Writer, bucketName, labelName string) error {
// bucketName := "bucket-name"
// labelName := "label-name"
ctx := context.Background()
client, err := storage.NewClient(ctx)
if err != nil {
return fmt.Errorf("storage.NewClient: %v", err)
}
defer client.Close()
ctx, cancel := context.WithTimeout(ctx, time.Second*10)
defer cancel()
bucket := client.Bucket(bucketName)
bucketAttrsToUpdate := storage.BucketAttrsToUpdate{}
bucketAttrsToUpdate.DeleteLabel(labelName)
if _, err := bucket.Update(ctx, bucketAttrsToUpdate); err != nil {
return fmt.Errorf("Bucket(%q).Update: %v", bucketName, err)
}
fmt.Fprintf(w, "Removed label %q from bucket %v\n", labelName, bucketName)
return nil
}
자바
자세한 내용은 Cloud Storage 자바 API 참조 문서를 확인하세요.
import com.google.cloud.storage.Bucket;
import com.google.cloud.storage.Storage;
import com.google.cloud.storage.StorageOptions;
import java.util.HashMap;
import java.util.Map;
public class RemoveBucketLabel {
public static void removeBucketLabel(String projectId, String bucketName, String labelKey) {
// The ID of your GCP project
// String projectId = "your-project-id";
// The ID of your GCS bucket
// String bucketName = "your-unique-bucket-name";
// The key of the label to remove from the bucket
// String labelKey = "label-key-to-remove";
Storage storage = StorageOptions.newBuilder().setProjectId(projectId).build().getService();
Map<String, String> labelsToRemove = new HashMap<>();
labelsToRemove.put(labelKey, null);
Bucket bucket = storage.get(bucketName);
Map<String, String> labels;
if (bucket.getLabels() == null) {
labels = new HashMap<>();
} else {
labels = new HashMap(bucket.getLabels());
}
labels.putAll(labelsToRemove);
bucket.toBuilder().setLabels(labels).build().update();
System.out.println("Removed label " + labelKey + " from bucket " + bucketName);
}
}
Node.js
자세한 내용은 Cloud Storage Node.js API 참조 문서를 확인하세요.
/**
* TODO(developer): Uncomment the following lines before running the sample.
*/
// The ID of your GCS bucket
// const bucketName = 'your-unique-bucket-name';
// The key of the label to remove from the bucket
// const labelKey = 'label-key-to-remove';
// Imports the Google Cloud client library
const {Storage} = require('@google-cloud/storage');
// Creates a client
const storage = new Storage();
async function removeBucketLabel() {
await storage.bucket(bucketName).deleteLabels(labelKey);
console.log(`Removed labels from bucket ${bucketName}`);
}
removeBucketLabel().catch(console.error);
PHP
자세한 내용은 Cloud Storage PHP API 참조 문서를 확인하세요.
use Google\Cloud\Storage\StorageClient;
/**
* Removes a label from a bucket.
*
* @param string $bucketName the name of your Cloud Storage bucket.
* @param string $labelName the name of the label to remove.
*/
function remove_bucket_label($bucketName, $labelName)
{
$storage = new StorageClient();
$bucket = $storage->bucket($bucketName);
$labels = [$labelName => null];
$bucket->update(['labels' => $labels]);
printf('Removed label %s from %s' . PHP_EOL, $labelName, $bucketName);
}
Python
자세한 내용은 Cloud Storage Python API 참조 문서를 확인하세요.
import pprint
from google.cloud import storage
def remove_bucket_label(bucket_name):
"""Remove a label from a bucket."""
# bucket_name = "your-bucket-name"
storage_client = storage.Client()
bucket = storage_client.get_bucket(bucket_name)
labels = bucket.labels
if "example" in labels:
del labels["example"]
bucket.labels = labels
bucket.patch()
print("Removed labels on {}.".format(bucket.name))
pprint.pprint(bucket.labels)
Ruby
자세한 내용은 Cloud Storage Ruby API 참조 문서를 확인하세요.
def remove_bucket_label bucket_name:, label_key:
# The ID of your GCS bucket
# bucket_name = "your-unique-bucket-name"
# The key of the label to remove from the bucket
# label_key = "label-key-to-remove"
require "google/cloud/storage"
storage = Google::Cloud::Storage.new
bucket = storage.bucket bucket_name
bucket.update do |bucket|
bucket.labels[label_key] = nil
end
puts "Deleted label #{label_key} from #{bucket_name}"
end
다음 단계
다른 Google Cloud 제품의 코드 샘플을 검색하고 필터링하려면 Google Cloud 샘플 브라우저를 참조하세요.