Skip to content

Creates a DevOps Environment on a Chromebook

Notifications You must be signed in to change notification settings

avaloqcloud/acf_devops

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DevOps Workplace

license apache green

Infrastructure as Code (IaC) tools help us to promote the best practices, which make the process of building and configuring the infrastructure more effective, reduce costs and operational effort. With the DevOps workplace we harmonize the toolset, employed to manage the infrastructure through a descriptive model. While the code is maintianed in configuration modules, stored in version control systems, many development tools remain locally installed. Through a common setup, we foster well-documented code formats, provide greater accuracy, reduce errors, and increase speed and consistency in code-based infrastructure automation. Our toolset is open source based and allows DevOps teams to control and customize the required infrastructure instead of manually configuring the servers and operating systems. The following command installs an IaC developement environment on the Chromebook Linux runtime

wget  -q -O - https://raw.githubusercontent.com/avaloqcloud/acf_devops/main/setup.sh | sudo bash

Preparation

The DevOps workplace is written for Chromebooks and requires the activation of the Linux Development Environment and user access to the Avaloq Cloud Github Repository.

Finishing

After installation users should configure the git client consider setting up a PostgreSQL user account.

git config --local user.name "Your Name"
git config --local user.email youraddress@mail.com

Deployment Strategy

For smooth teamwork, making sure developers and operators code in sync, is essential. This is where deployment strategies, a pillar in the DevOps world, step in. For Avaloq Cloud Services we adopt a tailored version of GitHub Flow.

Branching

We use Github as Version Control System, and leverage the Feature Branch Strategy to keep the main branch stable. It enables contributors to maintain development branches separately, based on the feature. Code is stored in four major branches named

  • stable is the release that contains the deployment reference code,

  • main represents the current deployment release, before code is merged from the 'test' branch, 'main' code is merged in the 'stable' branch

  • test is the code for the next release and enables operators to perform system integration testing, before is merged from the 'module' branches, it has to validated and testet

  • module is derived from the 'stable' branch and is the reference for module development, it is not stable, before code is marked is ready.

For the work on a new feature, a feature branch us created from the 'test' branch as base branch. When the code is committed, the developer has to run module tests. Dependency test have to performed to ensure 'destroy' is functioning and 'main' can be performed without destroying existing resources. When all test cases and manual tests are passed the code is merged with the 'test' branch, the unit tests and manual tests have to be run again to check the backward compatibility and ensuring no previous changes were broken.

Git Branches
Figure 1. Branch Strategy

This figure illustrates the branch strategy. The code is maintained in a stable manner and can be rolled back to the previous version. The main branch remains stable, implementing features, the latest plan branch code becomes the the base, for new features this cycle is repeated.

Tools

The following tools will be installed with the DevOps Workplace:

Devbox

Installing dependencies using Devbox or Open In Devbox.sh

Contributing

This project is a community project the code is open source. Please submit your contributions by forking this repository and submitting a pull request! Avaloq appreciates any contributions that are made by the open source community.

License

Copyright (c) 2023 Avaloq and/or its affiliates.

Licensed under the Apache License, Version 2.0.

See LICENSE for more details.

AVALOQ DOES NOT PROVIDE ANY WARRANTY FOR SOFTWARE CONTAINED WITHIN THIS REPOSITORY AND NO CUSTOMARY SECURITY REVIEW HAS BEEN PERFORMED. THIRD PARTIES MAY HAVE POSTED SOFTWARE, MATERIAL OR CONTENT TO THIS REPOSITORY WITHOUT ANY REVIEW. USE AT YOUR OWN RISK.

About

Creates a DevOps Environment on a Chromebook

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages