| 
contact@enkel.cloud
Service: Mon. to Sun. 9:00 AM to 7:00 PM (GMT-3)

Discover our

CASES

Controlling Production Deployments with AWS and Slack at Smiles

Smiles expressed the need for any deployment in its production environment to be duly approved by an additional responsible party, other than the executor, for greater control and governance of the environment. To address this, we developed a maintenance-friendly and easy-to-operate mechanism using API Gateway, Lambda, and DynamoDB for the database. The system sends messages to the client's Slack channel with options for approving executions.


Client

Smiles is one of the largest loyalty programs in Brazil, with 16 million participants as of March 2019. Established 25 years ago as Varig's loyalty program, it was later acquired by GOL and became an independent company in 2013, raising R$1.1 billion through an initial public offering (IPO).

The loyalty program is known for its innovation and pioneering initiatives, such as the launch of products and services since 2013, including Clube Smiles, Viaje Fácil, and Conta Família. The company also offers the longest mileage validity in the market, ranging from 3 to 10 years based on the customer's category.

Challenge

The project scope involved creating a production change control system with quick and simple approvals, encompassing the following requirements:

  1. Infrastructure as Code;
  2. Immutable Configuration;
  3. Serverless;
  4. Slack as the interface.
The project was particularly interesting due to its integrations with messaging products and the use of a serverless solution.

Solution

Infrastructure provisioning was developed using AWS CloudFormation. The API Gateway was built using OpenAPI 3.0. Lambdas were developed in Python to facilitate integration with Slack. All deploy scripts, previously developed and installed in Rundeck, were modified to include the new execution authorization step, waiting for confirmation or denial of the execution through Slack. See an example message below:



Results

With the delivery of this project, no production execution is performed without approval from one of the authorized individuals in the Slack channel, providing greater control at an extremely low cost.


CONTACT
Doubts? Want to know more about our work?
Please fill out the contact form, we will get in touch.