Skip to content

feat: add gcp-pubsub-emulator provisioner for score-compose#54

Merged
mathieu-benoit merged 3 commits intoscore-spec:mainfrom
thc1006:feat/gcp-pubsub-emulator
Jan 19, 2026
Merged

feat: add gcp-pubsub-emulator provisioner for score-compose#54
mathieu-benoit merged 3 commits intoscore-spec:mainfrom
thc1006:feat/gcp-pubsub-emulator

Conversation

@thc1006
Copy link
Contributor

@thc1006 thc1006 commented Jan 14, 2026

Summary

Add Google Cloud Pub/Sub Emulator provisioner for local development and testing.

  • Resource type: gcp-pubsub-emulator
  • Platform: score-compose only (score-k8s deferred to future PR)
  • Params: project_id (optional)
  • Outputs: host, port, project_id, emulator_host
  • Image: gcr.io/google.com/cloudsdktool/google-cloud-cli:emulators

Changes

  • gcp-pubsub-emulator/score.yaml - Example workload
  • gcp-pubsub-emulator/score-compose/10-gcp-pubsub-emulator.provisioners.yaml - Provisioner
  • README.md - Added provisioner entry to score-compose table

Test

cd gcp-pubsub-emulator
score-compose init --no-sample --provisioners score-compose/10-gcp-pubsub-emulator.provisioners.yaml
score-compose generate score.yaml
docker compose up -d
docker compose logs | grep "Server started"

Closes #53

Add Google Cloud Pub/Sub Emulator provisioner for local development.

Resource type: gcp-pubsub-emulator
Params: project_id (optional)
Outputs: host, port, project_id, emulator_host
Image: gcr.io/google.com/cloudsdktool/google-cloud-cli:emulators

Closes score-spec#53

Signed-off-by: thc1006 <84045975+thc1006@users.noreply.github.com>
Copilot AI review requested due to automatic review settings January 14, 2026 20:08
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a Google Cloud Pub/Sub Emulator provisioner for local development and testing with score-compose. The provisioner spins up a GCP Pub/Sub emulator container using the official Google Cloud SDK emulator image.

Changes:

  • Added provisioner file with support for optional project_id parameter and outputs for host, port, project_id, and emulator_host
  • Added example Score workload demonstrating usage with busybox container
  • Updated README to document the new provisioner in the score-compose table

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
gcp-pubsub-emulator/score.yaml Example workload demonstrating how to consume the GCP Pub/Sub emulator resource
gcp-pubsub-emulator/score-compose/10-gcp-pubsub-emulator.provisioners.yaml Provisioner definition for the GCP Pub/Sub emulator service
README.md Added table entry documenting the new provisioner

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@thc1006
Copy link
Contributor Author

thc1006 commented Jan 15, 2026

Dear @mathieu-benoit ,
all CI jobs have passed might can merge

@mathieu-benoit
Copy link
Contributor

Thanks @thc1006, I'll do my review over the weekend, thanks for your contribution, much appreciated!

- Change Chinese comment to English in provisioner file
- Add params section with project_id example in score.yaml
- Demonstrate all 4 outputs (host, port, project_id, emulator_host)

Signed-off-by: thc1006 <84045975+thc1006@users.noreply.github.com>
@thc1006 thc1006 requested a review from Copilot January 18, 2026 11:28
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 3 out of 3 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@thc1006
Copy link
Contributor Author

thc1006 commented Jan 18, 2026

Would you suggest I add a Healthcheck?
It seems other provisioners in the repo don't have yet. or maybe future can add a "gRPC health probe" issue to deal with.

GCP Pub/Sub Emulator uses the gRPC protocol

Copy link
Contributor

@mathieu-benoit mathieu-benoit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks for this implementation and the detailed documentation, much appreciated!

For your question about healthcheck, good point and good practice, but not sure there is any in there https://github.com/GoogleCloudPlatform/cloud-sdk-docker/tree/master/emulators.

@mathieu-benoit mathieu-benoit merged commit 08011d5 into score-spec:main Jan 19, 2026
2 checks passed
@thc1006 thc1006 deleted the feat/gcp-pubsub-emulator branch January 19, 2026 05:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

score-compose - Google Cloud Pub/Sub Emulator

3 participants