From 6ab77112266646bd2b771a91cd9bf30487ab1abd Mon Sep 17 00:00:00 2001 From: Flavio Peralta Date: Mon, 26 Jul 2021 09:40:51 -0300 Subject: [PATCH 1/3] feat: Support retry failure policy for event based functions (#247) Co-authored-by: Flavio Peralta --- package/googlePackage.js | 9 +++++++++ package/lib/compileFunctions.js | 6 ++++++ 2 files changed, 15 insertions(+) diff --git a/package/googlePackage.js b/package/googlePackage.js index 4ea2354..7fbb0a7 100644 --- a/package/googlePackage.js +++ b/package/googlePackage.js @@ -31,6 +31,15 @@ class GooglePackage { resource: { type: 'string', }, + failurePolicy: { + type: 'object', + properties: { + retry: { + type: 'object', + }, + }, + additionalProperties: false, + }, }, required: ['eventType', 'resource'], additionalProperties: false, diff --git a/package/lib/compileFunctions.js b/package/lib/compileFunctions.js index 535b55e..e126f05 100644 --- a/package/lib/compileFunctions.js +++ b/package/lib/compileFunctions.js @@ -83,11 +83,17 @@ module.exports = { const type = funcObject.events[0].event.eventType; const path = funcObject.events[0].event.path; //eslint-disable-line const resource = funcObject.events[0].event.resource; + const failurePolicy = funcObject.events[0].event.failurePolicy; + const retry = _.get(funcObject.events[0].event, 'failurePolicy.retry'); funcTemplate.properties.eventTrigger = {}; funcTemplate.properties.eventTrigger.eventType = type; if (path) funcTemplate.properties.eventTrigger.path = path; funcTemplate.properties.eventTrigger.resource = resource; + if (failurePolicy) { + funcTemplate.properties.eventTrigger.failurePolicy = {}; + funcTemplate.properties.eventTrigger.failurePolicy.retry = retry; + } } this.serverless.service.provider.compiledConfigurationTemplate.resources.push(funcTemplate); From 69b23ddeab75d0de17326c6aef153cfe22babbb1 Mon Sep 17 00:00:00 2001 From: Piotr Grzesik Date: Tue, 3 Aug 2021 15:07:30 +0200 Subject: [PATCH 2/3] chore: Bump dependencies --- package.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index c443070..a48c19f 100644 --- a/package.json +++ b/package.json @@ -51,17 +51,17 @@ "devDependencies": { "@commitlint/cli": "^9.1.2", "@serverless/eslint-config": "^2.2.0", - "coveralls": "^3.1.0", - "eslint": "^7.28.0", + "coveralls": "^3.1.1", + "eslint": "^7.32.0", "eslint-plugin-import": "^2.23.4", "git-list-updated": "^1.2.1", "github-release-from-cc-changelog": "^2.2.0", "husky": "^4.3.8", "jest": "^25.5.4", "lint-staged": "^10.5.4", - "prettier": "^2.3.1", + "prettier": "^2.3.2", "sinon": "^8.1.1", - "standard-version": "^9.3.0" + "standard-version": "^9.3.1" }, "scripts": { "commitlint": "commitlint -f HEAD@{15}", From e6e079965eb5303cb5a33f549f56eb8c5f981688 Mon Sep 17 00:00:00 2001 From: Piotr Grzesik Date: Tue, 3 Aug 2021 15:12:04 +0200 Subject: [PATCH 3/3] chore: Release 4.3.0 --- CHANGELOG.md | 6 ++++++ package.json | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index de48773..0458747 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,12 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +## [4.3.0](https://github.com/serverless/serverless-google-cloudfunctions/compare/v4.2.0...v4.3.0) (2021-08-03) + +### Features + +- Support retry failure policy for event based functions ([#247](https://github.com/serverless/serverless-google-cloudfunctions/issues/247)) ([6ab7711](https://github.com/serverless/serverless-google-cloudfunctions/commit/6ab77112266646bd2b771a91cd9bf30487ab1abd)) ([Flavio Peralta](https://github.com/flaviomp)) + ## [4.2.0](https://github.com/serverless/serverless-google-cloudfunctions/compare/v4.1.0...v4.2.0) (2021-06-17) ### Features diff --git a/package.json b/package.json index a48c19f..1447455 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "serverless-google-cloudfunctions", - "version": "4.2.0", + "version": "4.3.0", "description": "Provider plugin for the Serverless Framework v1.x which adds support for Google Cloud Functions.", "author": "serverless.com", "repository": "serverless/serverless-google-cloudfunctions",