Jaypore CI

> Jaypore CI: Minimal, Offline, Local CI system.
Log | Files | Refs | README

commit cefa774ccd7da7e64f1dc4e847ba5486ade89407
parent 6dc4781170065d0aee57601e63ce7178c44af6d1
Author: arjoonn <arjoonn@noreply.localhost>
Date:   Tue,  3 Jan 2023 14:32:12 +0000

artifacts (!18)

Branch auto created by JayporeCI

<details>
    <summary>JayporeCi: 🟢 de890dbb76</summary>

```mermaid
flowchart TB

            subgraph Pipeline
                direction TB

            end

            subgraph Docker
                direction TB

                s_Docker(( )) -.-> Docker_0(Jci):::passed
                s_Docker(( )) -.-> Docker_1(JciEnv):::passed
            end

            subgraph Jobs
                direction TB

                s_Jobs(( )) -.-> Jobs_0(black):::passed
                s_Jobs(( )) -.-> Jobs_1(pylint):::passed
                s_Jobs(( )) -.-> Jobs_2(pytest):::passed
            end

            subgraph Publish
                direction TB

                s_Publish(( )) -.-> Publish_0(DockerHubJcienv):::passed
                s_Publish(( )) -.-> Publish_1(DockerHubJci):::passed
                s_Publish(( )) -.-> Publish_2(PublishDocs):::passed
                s_Publish(( )) -.-> Publish_3(PublishPypi):::passed
            end

            Pipeline ---> Docker

            Docker ---> Jobs

            Jobs ---> Publish

            classDef pending fill:#aaa, color:black, stroke:black,stroke-width:2px,stroke-dasharray: 5 5;
            classDef skipped fill:#aaa, color:black, stroke:black,stroke-width:2px;
            classDef assigned fill:#ddd, color:black, stroke:black,stroke-width:2px;
            classDef running fill:#bae1ff,color:black,stroke:black,stroke-width:2px,stroke-dasharray: 5 5;
            classDef passed fill:#88d8b0, color:black, stroke:black;
            classDef failed fill:#ff6f69, color:black, stroke:black;
            classDef timeout fill:#ffda9e, color:black, stroke:black;
```
Co-authored-by: arjoonn sharma <arjoonn@midpathsoftware.com>
Reviewed-on: https://gitea.midpathsoftware.com/midpath/jaypore_ci/pulls/18

Diffstat:
MREADME.md | 2+-
Mdocs/source/examples.rst | 14++++++++++----
Mjaypore_ci/docker.py | 2+-
Mpyproject.toml | 2+-
4 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/README.md b/README.md @@ -7,7 +7,7 @@ Documentation is at : https://www.jayporeci.in ```bash # Install once -curl https://raw.githubusercontent.com/theSage21/jaypore_ci/main/setup.sh | bash +curl https://get.jayporeci.in | bash git add -Av git commit -m 'Add Jaypore CI' git push origin diff --git a/docs/source/examples.rst b/docs/source/examples.rst @@ -111,11 +111,17 @@ The above config generates 3 x 3 x 2 = 18 jobs and sets the environment for each Running on cloud/remote machine ------------------------------- -- Since the executor is docker: - - We can get the remote machine's docker socket by using [ssh socket forwarding](https://medium.com/@dperny/forwarding-the-docker-socket-over-ssh-e6567cfab160) - - Then we can set Jaypore CI to use the remote docker socket by editing `cicd/pre-push.sh` -- Now all jobs will run on the remote machine. +- Make sure docker is installed on the remote machine. +- Make sure you have ssh access to remote machine and the user you are logging in as can run docker commands. +- Add to your local `~.ssh/config` an entry for your remote machine. Something like: + .. code-block:: config + + Host my.aws.machine + HostName some.aws.machine + IdentityFile ~/.ssh/id_rsa +- Now in your `cicd/pre-push.sh` file, where the `docker run` command is mentioned, simply add `DOCKER_HOST=ssh://my.aws.machine` +- JayporeCi will then run on the remote machine. Having database / other services during CICD -------------------------------------------- diff --git a/jaypore_ci/docker.py b/jaypore_ci/docker.py @@ -133,7 +133,7 @@ class Docker(Executor): name = "".join( l for l in job.name.lower().replace(" ", "_") - if l in "abcdefghijklmnopqrstuvwxyz_" + if l in "abcdefghijklmnopqrstuvwxyz_1234567890" ) return f"{self.get_net()}_{name}" diff --git a/pyproject.toml b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "jaypore_ci" -version = "0.1.0" +version = "0.1.1" description = "" authors = ["arjoonn sharma <arjoonn.94@gmail.com>"]