All Projects → Backbase → variants

Backbase / variants

Licence: Apache-2.0 license
A command-line tool to setup deployment variants for iOS and Android, alongside a working CI/CD setup.

Programming Languages

swift
15916 projects
python
139335 projects - #7 most used programming language
ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to variants

Android-CICD
This repo demonstrates how to work on CI/CD for Mobile Apps 📱 using Github Actions 💊 + Firebase Distribution 🎉
Stars: ✭ 37 (+60.87%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
Nevergreen
🐤 A build monitor with attitude
Stars: ✭ 170 (+639.13%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
cloud-s4-sdk-pipeline-docker
The Cloud SDK continuous delivery infrastructure makes heavy use of docker images. This are the docker sources of these images.
Stars: ✭ 13 (-43.48%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
www.go.cd
Github pages repo
Stars: ✭ 39 (+69.57%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
cloud-s4-sdk-pipeline
The Cloud SDK pipeline uses the Cloud SDK continuous delivery server for building, checking, and deploying extension applications. Projects based on the SAP Cloud SDK archetype will automatically use this pipeline.
Stars: ✭ 65 (+182.61%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
Psdeploy
Simple PowerShell based deployments
Stars: ✭ 302 (+1213.04%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
Serverless Plugin Canary Deployments
Canary deployments for your Serverless application
Stars: ✭ 283 (+1130.43%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
Git Push Deploy
Simple Automated CI/CD Pipeline for GitHub and GitLab Projects
Stars: ✭ 21 (-8.7%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
Gocd
Main repository for GoCD - Continuous Delivery server
Stars: ✭ 6,314 (+27352.17%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
Argo Cd
Declarative continuous deployment for Kubernetes.
Stars: ✭ 7,887 (+34191.3%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
Agola
Agola: CI/CD Redefined
Stars: ✭ 783 (+3304.35%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
Origin
Conformance test suite for OpenShift
Stars: ✭ 8,046 (+34882.61%)
Mutual labels:  continuous-delivery, continuous-deployment, ci-cd
Rocket
Automated software delivery as fast and easy as possible 🚀
Stars: ✭ 217 (+843.48%)
Mutual labels:  continuous-delivery, continuous-deployment
Werf
The CLI tool gluing Git, Docker, Helm, and Kubernetes with any CI system to implement CI/CD and Giterminism
Stars: ✭ 2,814 (+12134.78%)
Mutual labels:  continuous-delivery, ci-cd
Liquibase
Main Liquibase Source
Stars: ✭ 2,910 (+12552.17%)
Mutual labels:  continuous-delivery, continuous-deployment
ofcourse
A Concourse resource generator
Stars: ✭ 41 (+78.26%)
Mutual labels:  continuous-delivery, continuous-deployment
Xrm Ci Framework
xRM CI Framework provides you with the tools automate the build and deployment of your CRM Solution. Using the framework to implement a fully automated DevOps pipeline will allow you to deploy more frequently with added consistency and quality.
Stars: ✭ 172 (+647.83%)
Mutual labels:  continuous-delivery, continuous-deployment
Rok8s Scripts
Opinionated scripts for managing application deployment lifecycle in Kubernetes
Stars: ✭ 248 (+978.26%)
Mutual labels:  continuous-delivery, continuous-deployment
generator-nullfactory-xrm
Yeoman generator for Dynamics 365 Solutions. It generates a project structure that facilitates the quick creation builds and automated release strategies with minimal effort.
Stars: ✭ 15 (-34.78%)
Mutual labels:  continuous-delivery, continuous-deployment
ship-it
Wattpad's tool for continuously deploying code to Kubernetes quickly, safely, and observably.
Stars: ✭ 14 (-39.13%)
Mutual labels:  continuous-delivery, continuous-deployment

CI codecov

Variants

A command line tool to setup deployment variants and working CI/CD setup for mobile projects.

Concept

Variants aims to facilitate the setup and usage of multiple deployment variants for a mobile application (iOS and Android) while also providing a fully working and rich Fastlane setup, with opt-in features for your pipelines. While achieving these goals, it also reduces the amount of sources of truth in your configuration, by relying only on the Variants Spec - a YAML configuration file generated by variants init.

Variants spec - by default located at ./variants.yml, relative to your project's base folder - becomes the sole source of truth and the main configuration file for your needs. This file is responsible for:

  • Specifying how many deployment variants you desire for this project and the differences between these variants (Name, Icon, Identifier, Version, and more with Custom Properties);
  • Which store do you want Fastlane to deploy each variant to;
  • Signing configuration. Both global (applies to all) and variant specific (overrides global);
  • Custom properties. Both global (applies to all) and variant specific (overrides global). Custom properties have different destinations, so that certain properties aren't available to Fastlane but to Project and vice-versa. These can also be sourced from environment variables, perfect for secrets and tokens.

Features

  • Setup your mobile project to have multiple variants of the same application.
    • ➡️ Each variant having it's own:
      • Name
      • Identifier
      • Icon
      • Version
      • Specific tasks and configurations
      • Anything really!
  • Setup CI/CD using fastlane.
    • ➡️ Lanes for specific tasks:
      • Setup CI
      • Create Keychain
      • Perform Unit and UI tests
      • Lint and format
      • Complexity analisys
      • Sonar report
      • Build and sign application
      • Deploy to AppCenter / PlayStore / AppStore
      • Many more!

Installation

On Github Actions CI

See Switching Variants on CI for a better understanding and examples.

Homebrew (recommended)

brew install backbase/m/variants

Make

For Linux, make sure you have Swift installed by running swift --version

git clone https://github.com/backbase/variants.git
cd variants
make install

Swift Package Manager

Use as CLI

git clone https://github.com/backbase/variants.git
cd variants
swift run variants

CLI Usage

For usage and examples see USAGE.

Auto detecting the project's platform

Specifying your project's platform (ios or android) isn't always necessary. Variants is able to detect which platform your project is. See our Platform Auto Detection for a better understanding and examples.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].