Purpose
The purpose of the workshop is to give a general and hands-on introduction to Radix. We do this by "forking" and example application, get familiar with the application, establish a CI environment locally, move the application into Radix and then establish the full CI/CD DevOps cycle.
- 1. Omnia Radix Workshop 1
- Added to proper AD Group
fg_radix_platform_user
- Verify access to Radix - https://console.radix.equinor.com/
- Account on github.com
- Git installed and working locally against github.com
- Docker running locally
- Local dev. environment (IDE++)
- Node js eco system installed and running (Downnload Nodejs)
- Laptop that "works" on “Statoil Approved” WiFi. If not - know how to handle proxy fun for both Docker and local development environment
- Fork repository to your home on github. Consider choosing an alternative name for the repository
- Clone your newly forked repository down to your developer laptop
- Move into the echo folder and explore how to develop the Echo app using
Node.js
as well as Dockerizing the application.
- Move into the www folder and explore how to develop the WWW app using
Node.js
as well as Dockerizing the application.
Remember that the Echo app needs to run somewhere to get proper response.
- The Radix cluster we use for the workshop is available at https://console.radix.equinor.com/
- Radix "getting started++" is available at https://www.radix.equinor.com/
Important to know:
- The difference between
platform user
andapplication user
- Important terminology:
application
,environments
,components
, andreplicas
raidxconfig.yaml
- lives on the master branch and is your infrastrucure as code - drive your app in Radix.
- Reading the docs
- Exploring the config file for the example app ./radixconfig.yaml
- Update the name of
your instance
of the application in radixconfig.yaml - Follow the getting started guide (www.radix.equinor.com) or "just do it!"
- Do a change to trigger the initial build (or use the "New job" feature in the jobs/environment section). Examine web-hooks and reponse in Radix
- Verify that the app work on the public end-point it has been given.
Radix support connecting a branch to a specific environment. Let's explore this.
- Update the radixconfig.yaml file, commit, push and explore what's happening in Radix. (Copy the file ./radixconfigs/radixconfig-feature1.yaml to ./radixconfig.yaml. Remember to update app name)
- Check out the "new" branch (feature1)
- Examine code - the new feature (getting a new env variable from Echo)
- Do a change, commit, push and explore what's happening in Radix.
- To Be Decided
- Move your own apps into Radix
(Status as of January 2019)
- Storage - databases
- Authentication
- Logging
- Metrics - Monitoring
- Radix CLI (Api)
- Backup & Disaster recovery
- Own domain names / urls for apps
- Slack (#omnia_radix, #omnia_radix_support)
- Radix Console - https://console.radix.equinor.com/
- Radix Getting Started - https://www.radix.equinor.com/
It makes sense to examing existing issues and perhaps discuss on Slack prior to logging a new one