ansible-collections / ansible-collections/google.cloud
Ability to create Pub/Sub GCS based subscription
- Dominant language
- Python
- Stars
- 105
- Forks
- 144
- Avg merge
- 5d 10h
- Merged PRs (30d)
- 4
Description
##### SUMMARY
Google introduced a possibility to create Pub/Sub GCS based subscription which allows to read the messages from the topic and writes them directly to the GCS bucket. It would be nice to have such a possibility in the Ansible module as well.
Here are the details: https://cloud.google.com/pubsub/docs/create-cloudstorage-subscription
##### ISSUE TYPE
- Feature Idea
##### COMPONENT NAME
gcp_pubsub_subscription
##### ADDITIONAL INFORMATION
Here is a sample configuration of a GCS based Pub/Sub subscription:
```yaml
- name: Control Pub/Sub dead letter topic GCS subscription
google.cloud.gcp_pubsub_subscription:
name: "{{ pubsub_control_topic_dead_letter_short_name }}-gcs-sub"
topic: "{{ pubsub_control_topic_dead_letter_full_name }}"
project: "{{ pubsub_control_subscription_gcp_project_id }}"
cloud_storage: {
bucket: "{{ feedrouter_pubsub_dead_letter_bucket_name }}",
file_prefix: "{{ pubsub_control_topic_dead_letter_short_name }}_",
max_duration: "{{ pubsub_control_subscription_gcs_dead_letter_batch_max_duration }}",
max_bytes: "{{ pubsub_control_subscription_gcs_dead_letter_batch_max_bytes }}",
output_format: "{{ pubsub_control_subscription_gcs_dead_letter_message_format }}",
write_metadata: true
}
auth_kind: "application"
state: "{{ pubsub_control_subscription_state }}"
```
Contributor guide
Research direction
Start with the gcp_pubsub_subscription Ansible module and compare its current subscription options with the linked Google Cloud Pub/Sub Cloud Storage subscription documentation. Use the provided configuration as the acceptance example; done means the module can create and manage a subscription with the shown cloud_storage settings.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- google-cloud, python
- Domain
- cloud, devops
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 65/100