Photo by Ewan Kennedy on Unsplash

Background:

Generally in the application, there are various secret keys and credentials that we need to make use of API keys, Secret keys for eg. AWS CLI login credentials etc.

Let’s talk about rails credentials now,

The way for managing secret keys in the Rails ecosystem itself.
How different this approach is? Well, it will store secrets itself in the application but those are encrypted and to decrypt them we need a master key.

Interacting with credentials:

A set of files were used to manage credentials

  • config/credentials.yml.enc
  • config/master.key

So basically config/credentials.yml.enc


This week, Ruby’s development team released the major version 3.0

Among the countless cool changes and additions including some fantastic general performance boosts and a powerful new concurrency/parallel processing efficiency model a new built-in language has emerged for static type definitions: Ruby (Type) Signature language, or RBS.

Why Static Typing?

Ruby is a dynamically typed language, which means the interpreter tries to infer the data type of variables and object properties at runtime. This generally leads to programs being more dynamic and easier (faster) to code, and the interpreter/compiler loading code faster. …


In this article, I’m going to demonstrate to you how easily you can set up CI/CD for Rails app with AWS elastic beanstalk.

Photo by SpaceX on Unsplash

What is CI/CD?

In software engineering, CI/CD or CICD generally refers to the combined practices of continuous integration and either continuous delivery or continuous deployment. CI/CD bridges the gaps between development and operation activities and teams by enforcing automation in building, testing and deployment of applications.

Let’s start the execution step by step.

CI (Continues Integration)

Step 1

Let’s start creating a new workflow in GitHub actions that will perform those tasks. in your root rails project.

mkdir -p .github/workflows
touch .github/workflows/main.yml

Step…


In this blog, we will show you how to integrate a finite state machine in kotlin using Tinder’s library.

What is a state machine?

A state machine is a behaviour model. It consists of a finite number of states and is therefore also called finite-state machine (FSM). Based on the current state and a given input the machine performs state transitions and produces outputs.

A finite-state machine (FSM) or simply a state machine, is a mathematical model of computation. It is an abstract machine that can be in exactly one of a finite number of states at any given time. The FSM can change from…


Photo by Fabian Grohs on Unsplash

Why Test?

Writing tests is all about making sure that the code you write is working as expected and you did not break anything while adding new features or refactoring your code.

Automation is an integral part of software development then why should we continue doing manual tests again and again with chances of missing out on some test scenarios that are important. Instead, let the robots do the boring tasks for you 😁.

If you have written a test suit, and the test suit passes, you can be confident that you are entire application behaves as expected.

Test Driven Development (TDD)

Tests are likely the…


Photo by chris panas on Unsplash

In this article, I’m going to show you how to do Simple Authentication with Okta using Devise gem.

History

We are implementing Single Sign-on(SSO) for one of our clients’ projects at scalereal. So, we compared various Single Sign-on(SSO) providers such as AWS-Cognito, Auth0 and Okta eventually we decided to use Okta as it was most suitable for our needs.

What is Okta ??

It’s a SaaS product that provides cloud software that helps companies manage and secure user authentication into modern applications, and for developers to build identity controls into applications, website web services and devices.

Before going ahead create a developer account on Okta.

Sandesh Bodake

Software Engineer at scalereal

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store