0.1.25 • Published 4 years ago

continued v0.1.25

Weekly downloads
2
License
MIT
Repository
-
Last release
4 years ago

mr

package to help deploy merge requests project on test environment with docker, and provide a page to view these projects

this package can listen your project, and auto clone source code to deploy in docker for each merge request. When a merge request is closed or merged, this program will remove docker image and container which used by the closed or merged request.

Each time this program run, it will get all merge_requests are opened and try to deploy them.

finally, you can view them on localhost:8099(of course you can set this port)

Install

  npm install test-mr-server

Before use

To use this package with docker-compose or docker build, we hope you provide a configuration file named continued.json in your project to us to know some details about your project like language .etc. Besides, if you had build artifacts before deploy, we hope you can provide a script in your project to us to get these artifacts, otherwise, we would just clone this project and install dependence, build, this process may be very long... Finally, you should open the gitlab or github web hooks to send request for this program to listen to your project. At least, you should open Job events and merge requests.

the continued.json maybe like this

  {
    "artifacts": {
      "fetch": true
    },
    "scripts": {
      "prebuild": "./scripts/install.sh",
      "build": "./scripts/build.sh",
      "postbuild": "./scripts/post-build.sh"
    },
    "deployment": {
      "env": {
        "NODE_DEBUG": "xxx"
      },
      "compose": {
        "file": "docker-compose.yml", //  docker-compose file path
        "entry": "web" //  docker service name, such as mr-server
      }
    }
  }

Usage

  mr ~/Document/continued.config.json

you can run this program with this command, which means set config file link to ~/Document/continued.config.json, about this .json, like this:

{
  "project": "owner/repo",
  "server": {
    "hostname": "localhost",
    "url": "localhost:8099",
    "http": {
      "port": 8099
    }
  },
  "repository": {
    "name": "gitlab",
    "url": "https://gitlab.com",
    "credentials": {
      "privateToken": "123"
    },
    "polling": {
      "interval": 600000
    }
  },
  "ci": {
    "name": "gitlab",
    "url": "https://gitlab.com",
    "credentials": {
      "privateToken": "123"
    },
    "polling": {
      "interval": 10000
    }
  },
  "branches": {
    "colors": {
      "feature": "green",
      "fix": "red"
    }
  },
  "build": {
    "env": {
      "ENV_BUILD_SCRIPT_NEEDS": "test"
    }
  },
  "deployment": {
    "env": {
      "ENV_DOCKER_COMPOSE_NEEDS": "test",
    }
  },
  "tasking": {
    "concurrency": 2
  }
}

And then, this program would run as a resident process, it would output some message on the shell like docker building info, unzip file info, error message .etc.

0.1.25

4 years ago

0.1.24

4 years ago

0.1.23

4 years ago

0.1.22

4 years ago

0.1.20

4 years ago

0.1.21

4 years ago

0.1.19

4 years ago

0.1.18

5 years ago

0.1.17

5 years ago

0.1.16

5 years ago

0.1.15

5 years ago

0.1.14

5 years ago

0.1.13

5 years ago

0.1.12

5 years ago

0.1.11

5 years ago

0.1.10

5 years ago

0.1.9

5 years ago

0.1.8

5 years ago

0.1.7

5 years ago

0.1.6

5 years ago

0.1.5

5 years ago

0.1.4

5 years ago

0.1.3

5 years ago

0.1.2

5 years ago

0.1.1

5 years ago

0.1.0

5 years ago