Skip to content

how to initially we can invoke cloud function from deployment manager? #680

@venkatarajv

Description

@venkatarajv

Question 1. I'm trying to create a cloud function through a cloud deployment manager. Once that is deployed, the function is unable to invoke initially. after testing or clicking a URL, the function is invoking.

Deployment.jinja


{% set deployment_name =  env["deployment"]  %}
{% set project = env['project']  %}
{% set region = "us-central1" %}

resources:
- type: storage.v1.bucket
  name: {{ deployment_name }}
  properties:
    project: {{ project }}
- name: CloudFunction
  type:  gcp-types/cloudfunctions-v1:projects.locations.functions
  properties:
    parent: projects/{{ project }}/locations/us-central1
    function: {{ deployment_name }}
    entryPoint: handler
    timeout: 60s
    availableMemoryMb: 256
    runtime: python39
    location: {{ region }}
    sourceArchiveUrl: gs://bucket/archive.zip
    httpsTrigger:
      url: https://{{ region }}-{{ project }}.cloudfunctions.net/{{ deployment_name }}
    environmentVariables:
      BUCKET: {{ deployment_name }}
      FUNCTION_REGION: {{ region }}
      PROJECT: {{ project }}

Question 2. Can we invoke a function based on CreateFunction or DeleteFunction? Same, how we call in AWS lambda like requestType=Create and requestType=Delete.

stack driver logs:
Ex: methodName: google.cloud.functions.v1.CloudFunctionsService.DeleteFunction and methodName: google.cloud.functions.v1.CloudFunctionsService.CreateFunction
simmillar like this:

def hello_world(request):
    if request['methodName']=="DeleteFunction":
       print("delete bucket")
    if request['methodName']=="CreateFunction":
       print("create bucket")

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions