Skip to content

Files

This branch is 1340 commits behind GoogleCloudPlatform/java-docs-samples:main.

eventarc

Eventarc Samples

Open in Cloud Shell

This directory contains samples for creating Cloud Run services that listens to events from Eventarc.

Samples

Sample Description Deploy
Eventarc - Pub/Sub Listen to Pub/Sub events Run on Google Cloud
Eventarc - Audit – Storage Listen to Audit Log events from Cloud Storage Run on Google Cloud
Eventarc - Generic Listen to a generic event from Eventarc Run on Google Cloud

Setup

  1. Set up for Cloud Run development

  2. Clone this repository:

    git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
    
  3. In the samples's pom.xml, update the image field for the jib-maven-plugin with your Google Cloud Project Id:

    <plugin>
      <groupId>com.google.cloud.tools</groupId>
      <artifactId>jib-maven-plugin</artifactId>
      <version>2.0.0</version>
      <configuration>
        <to>
          <image>gcr.io/PROJECT_ID/SAMPLE_NAME</image>
        </to>
      </configuration>
    </plugin>

How to run a sample locally

  1. Build the sample container using Jib:

    mvn compile jib:dockerBuild
  2. Run containers locally by replacing PROJECT_ID and SAMPLE_NAME with your values.

    With the built container:

    PORT=8080 && docker run --rm -p 9090:${PORT} -e PORT=${PORT} gcr.io/PROJECT_ID/SAMPLE_NAME

    Injecting your service account key for access to GCP services:

    PORT=8080 && docker run \
       -p 9090:${PORT} \
       -e PORT=${PORT} \
       -e K_SERVICE=dev \
       -e K_CONFIGURATION=dev \
       -e K_REVISION=dev-00001 \
       -e GOOGLE_APPLICATION_CREDENTIALS=/tmp/keys/[FILE_NAME].json \
       -v $GOOGLE_APPLICATION_CREDENTIALS:/tmp/keys/[FILE_NAME].json:ro \
        gcr.io/PROJECT_ID/SAMPLE_NAME
    • Use the --volume (-v) flag to inject the credential file into the container (assumes you have already set your GOOGLE_APPLICATION_CREDENTIALS environment variable on your machine)

    • Use the --environment (-e) flag to set the GOOGLE_APPLICATION_CREDENTIALS variable inside the container

  3. Open http://localhost:9090 in your browser.

Learn more about testing your container image locally.

Deploying

  1. Build the sample container using Jib:

    mvn compile jib:build
    

    Note: Using the image tag gcr.io/PROJECT_ID/SAMPLE_NAME automatically pushes the image to Google Container Registry.

  2. Deploy to Cloud Run by replacing PROJECT_ID and SAMPLE_NAME with your values:

    gcloud run deploy --image gcr.io/PROJECT_ID/SAMPLE_NAME