💬

GCP Pub / Sub エミュレータをローカルで建てる・GCP Pub / Subにリクエストする

2022/07/01に公開

GCPの用意しているメッセージングキューであるPub/Subを試験したり直接操作したりするために。

Pub/Subをローカルで建てる

export PUBSUB_PROJECT_ID=my-project
gcloud beta emulators pubsub start \
    --project=$PUBSUB_PROJECT_ID \
    --host-port=localhost:8085

ローカルPub/Subにリクエストを発行する

#環境変数の設定
export PUBSUB_PROJECT_ID=my-project
export TOPIC_ID=my-topic
export PUSH_SUBSCRIPTION_ID=my-subscription
$(gcloud beta emulators pubsub env-init)

#Python用PubSubツールをDL
git clone https://github.com/googleapis/python-pubsub.git
cd python-pubsub/samples/snippets/
pip install -r requirements.txt

#リクエストを作成
python publisher.py $PUBSUB_PROJECT_ID create $TOPIC_ID
python subscriber.py $PUBSUB_PROJECT_ID create-push $TOPIC_ID $PUSH_SUBSCRIPTION_ID http://localhost:8080
python publisher.py $PUBSUB_PROJECT_ID publish $TOPIC_ID

http://localhost:8080 のURLを変更すればGCP上のPub/Subにもtopic / subscriptionの発行も可能

Discussion