[MUSIC PLAYING]
ARHAAN SAKSENA: Hi.
Arhaan here.
I'm an enterprise customer engineer at Google Cloud.
PRIYANKA VERGADIA: And hi from me, Priyanka.
I'm a customer engineer, and I help Google Cloud customers
understand their big data.
On an episode earlier, we looked at managing
containerized applications with Kubernetes engine.
And you had the chance to deploy a containerized app
in Qwiklabs.
You can check out the link to that episode here.
ARHAAN SAKSENA: On this episode, we're
taking it to another level.
Through a hands-on lab, you're going
to learn how to build a Slack bot using Botkit.
And then run it on Kubernetes engine.
You'll also interact with the bot in a live Slack channel.
[WHOOSH]
OK.
So a quick recap on Kubernetes engine.
Containers address the problem of how
to easily and consistently deploy apps
in different environments by allowing
them to be broken into smaller, independent pieces.
These can then be deployed and managed dynamically.
Containerization also allows the separation
of apps from infrastructure.
PRIYANKA VERGADIA: Leveraging Google's infrastructure,
Kubernetes engine provides the perfect managed environment
for deploying, managing, and scaling
your containerized applications.
By simply describing the compute, memory,
and storage resources your apps containers require,
Kubernetes engine automatically provisions and manages
the underlying cloud resources.
ARHAAN SAKSENA: In this lab, creating a cluster
on Kubernetes engine will ensure that it adds a new node
to your cluster if your pods don't have enough capacity
to run.
Conversely, if a node in your cluster is underutilized,
Kubernetes engine can delete the node.
You'll also use Kubernetes engine to create a deployment.
[WHOOSH]
PRIYANKA VERGADIA: Bot users enable workspaces
to interact with external services or your custom code,
and have many of the same qualities
as their human counterparts.
Bot users have profiles photos and names.
They can be direct messaged or mentioned.
They can post messages and upload files.
And they can even be invited to and kicked out
of a public and private conversation.
ARHAAN SAKSENA: The biggest difference
between bots and regular users is
that, instead of interacting with the workspace
through mobile or desktop apps, bots are controlled
programmatically through APIs.
Within a Slack channel, bots can do nearly anything
you program them to do.
[WHOOSH]
PRIYANKA VERGADIA: All right.
Time for Qwiklabs.
In this hands-on lab, you are going
to create a bot that posts a simple message.
ARHAAN SAKSENA: By completing the lab,
you're going to learn how to create a custom bot
integration in Slack, build a node.js image in Docker,
upload a Docker image to a private Google Container
Registry, and run a Slack bot on Kubernetes engine.
PRIYANKA VERGADIA: You can check out the links
to start the Qwiklabs here.
Keep in mind that it's going to take you
about an hour to complete.
ARHAAN SAKSENA: The lab requires access to a Slack team
where you're authorized to create custom integrations.
To set up the lab, you clone the code repository and install
node.js dependencies.
We then create a new Slack app, add a new bot user to the app,
and get the bot user an OAuth access token.
We edit the node.js file with the OAuth access token.
We run the bot.
In Slack, we can see that our bot user is now online.
We send our bot a message, and get a response.
We hope you enjoyed this episode.
If you've developed other cool Slack bots,
we'd love to hear about them.
PRIYANKA VERGADIA: If you haven't signed up
for the $300 free trial credit on GCP, check out this link.
It's a great way to apply what you've learned.
ARHAAN SAKSENA: All of our additional training resources
are linked below.
Thanks again for watching, and see you soon.
PRIYANKA VERGADIA: Want to know more about Deployment Manager?
Check out our full episode where we dive into a lab
and highlight this service.
[MUSIC PLAYING]