Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Google Cloud Support Slackbot #673
Google Cloud Support Slackbot #673
Changes from 19 commits
a10679b
a6fb4f6
291f472
067b809
92d4469
1e53cf0
64ca1e8
8498207
049ab32
243d80e
606c8cb
f45a5ea
12afb90
8bec817
9d31016
3f9a7b0
cb0aebe
98647e3
a214e13
c623aec
18e0328
7a75deb
f6dd2b7
817e6a4
615f0d0
e1f3019
d0c4389
aef1720
cbb087f
47375e2
97e6fe9
338a311
8dd2a2b
4019215
fa91a62
bc386cc
a7f66dd
993884c
43732e0
f15b418
ad4b5e3
ba4ac10
180f304
1526a4a
3ef173e
f531f72
7eec127
847baf2
91f25cc
c479e71
7394b59
cf0d99f
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we use Google Cloud Run instead? I believe that dedicated virtual machine is pretty high maintance burden for so trival service. It might impact security, because that service require eg. security updates.
In case of Google Cloud Run maintenance of upgrades of operating system is out of the box. In addiction SSL is managed too.
I see that you have shared state on file system, but I believe you can easy save the same data to Google Cloud Storage.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Alternative I can see that Google Cloud have tutorial how to write Slack bot on top of Google Cloud Function: https://cloud.google.com/functions/docs/tutorials/slack#functions_slack_search_tutorial-python
For shared storage you might use Google Cloud Storage or Google Firestore for reduce maintenance burden of storage.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When I modularize the code for the GA release of the Support API, I will also rewrite it so it can be used with containers by using Firestore or GCS for storage, which would also make it work with Cloud Functions as well. One of the first requests I got was to make this work with GKE, so a build that will let people deploy the app wherever they feel most comfortable housing it will be the best option here. I will also add this on the trello for this, and will share a link here once the board is ready
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you make sure GKE users would not be satisfied with their needs better by Cloud Functions eg. ask them? I have the impression that the question about the GKE stems from both of the maintenance of the GCE instance. I have impression that GCF might allow you to run it for a few cents per month, which GKE does not, so it is also an economical and environmentally friendly solution thanks to the optimal use of resources.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can check with them, I agree that from a cost perspective that Cloud Functions is the way to go, the only issue that some people might have with it is code updates, because Cloud Functions doesn't let you edit your code. You would have to delete the function and then recreate it. I can put together a script to make it less painful though
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can always deploy a new version of a Cloud Function (https://cloud.google.com/functions/docs/deploying#migrating_between_deployments), which, in a way, is an update of an existing function.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All setup above can be performed in Terraform or Google Cloud Resource Manager. Is there any guidelines for that repository when Terraform should be used and when plain text tutorial? See example https://github.com/GoogleCloudPlatform/professional-services/tree/main/examples/kerberized_data_lake .
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think the answer is it depends on each team's maturity with Google Cloud. For an organization that is new to cloud, following the step-by-step guide will likely make the most sense. For more experienced teams though, they will likely have terraform already handy that they can use to build up vanilla projects with most of this implemented
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Was this item supposed to be further on in the command list? It does not contain a command line command to be executed like the previous points.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is intentional, the commands for this aren't listed out as I assume most of the people who will be setting this up will have a basic knowledge of vim or nano.