GithubHelp home page GithubHelp logo

vtluu / 3musketeers Goto Github PK

View Code? Open in Web Editor NEW

This project forked from flemay/3musketeers

0.0 0.0 0.0 4.22 MB

Test, build, and deploy your apps from anywhere, the same way!

Home Page: https://3musketeers.io

License: MIT License

Makefile 100.00%

3musketeers's Introduction

3 Musketeers

Build Status Netlify Status License


Test, build, and deploy your apps from anywhere, the same way!

Overview

The 3 Musketeers is a pattern for developing software in a repeatable and consistent manner. It leverages Make as an orchestration tool to test, build, run, and deploy applications using Docker and Docker Compose. The Make and Docker/Compose commands for each application are maintained as part of the application’s source code and are invoked in the same way whether run locally or on a CI/CD server.

pattern-overview

Why?

Consistency

Run the same commands no matter where you are: Linux, MacOS, Windows, CI/CD tools that supports Docker like GitHub Actions, Travis CI, CircleCI, and GitLab CI.

Control

Take control of languages, versions, and tools you need, and version source control your pipelines with your preferred VCS like GitHub and GitLab

Confidence

Test your code and pipelines locally before your CI/CD tool runs it. Feel confident that if it works locally, it will work in your CI/CD server.

Prerequisites

Usage

Create the two following files:

# file: docker-compose.yml
version: '3'
services:
  alpine:
    image: alpine
# file: Makefile

# echo calls Compose to run the command "echo 'Hello, World!'" in a Docker container
echo:
	docker-compose run --rm alpine echo 'Hello, World!'

Then simply echo "Hello, World!" with the following command:

$ make echo

For more information, visit 3musketeers.io.

Website

This repository is the 3musketeers.io website. This section explains how to develop, test, and deploy it using the 3 Musketeers.

Prerequisites

Development

# create a .env file
$ make envfile ENVFILE=env.example
# install dependencies
$ make deps

# start vuepress server for local development
$ make dev
# wait till the message 'vite v2.5.3 dev server running at' appears
# access the website in your browser at http://localhost:8080/
# \<ctrl-c\> to stop

# build static site
$ make build

# serve static site for local development
$ make serveDev
# access the website in your browser at http://localhost:8080/
# \<ctrl-c\> to stop

# serve static website (headless)
$ make serve

# test static website
$ make test

# deploy to netlify (do not forget to set the environment variables)
$ make deploy

# clean
$ make clean

# contributing? make sure the following command runs successfully
$ make all

Contributing

Thanks goes to these wonderful people.

The 3 Musketeers is an open source project and contributions are greatly appreciated.

Please visit https://3musketeers.io/about/contributing.html for more information.

Credits

Stargazers over time

Stargazers over time

License

MIT

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.