Code Monkey home page Code Monkey logo

gitte's People

Contributors

firecow avatar laujosefsen avatar renovate-bot avatar renovate[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gitte's Issues

Allow wildcard for groups

For example, the build script is often identical between groups.

It would be nice to configure groups as:

      build:
        groups:
          *: ["build.sh"]

And maybe even allow runnning
git-local-devops run build, which would require all build actions to have a wildcard group.

Make arguments able to be lists

I would like to be able to run
gitte run build&up group

Actions, groups and projects should be able to be specified as so.

I suppose let actions be sequential, and groups/projects be parallized.

Add `no-tty` option

Dont print progressbar and latest output 10 times per second. Only print stuff once.

`gitte clean`

  • gitte clean untracked
  • gitte clean ignores
  • gitte clean master
  • gitte clean non-gitte - Remove folders not managed by gitte.
  • gitte clean -- all of the above

Add a more "live" output

Progress bar for promises.all, potentially also output telling what the program is currently waiting for.

Should be disable-able via an option.

More featureful searchFor hints and action specific searchFor hints

For example the last line from a script may say something like
happytiger-dev environment: { name: happytiger.co.uk-dev, url: https://gamesearch-lejo.greathippydev.dk }

I suggest having a config along the lines of:

searchFor: 
  - regex: "-dev environment: { name: ([^.]*).*-dev, url: (.*) }"
    hint: "{green {1} gamesearch service has started sucessfully - go visit it on} {cyan {2}}"

From which, if the regex matches any stdout output from that action, it should print
image

I think this config should sit on the action itself OR global.

Implemented in #64

Use git branch --show-current

Instead of git rev-parse --agreb-ref HEAD.

Reason:

┌──(fresser㉿laudesk)-[~/git-local-devops]
└─$ git rev-parse --abrev-ref HEAD
--abrev-ref
dc9b998a7800bbdac455e1e5af87a4ca0cde7461

expected output:

┌──(fresser㉿laudesk)-[~/git-local-devops]
└─$ git branch --show-current
20-typescriptify-and-use-esm

Use nesting folders

Based on remote, use nesting folders instead of a long name

such that /services/abc/someproject gets cloned into /services/abc/someproject instead of services-abc-someproject

Eslint

Do we want to enforce eslint?

Make merging optional with default of disabled

Some developers will most likely find it instrusive to constantly have master merged into their repository.

Some developers will most likely want it.

Make it default disabled, so no one will get changes by surprise, and make it enableable with --auto-merge or env variable GITTE_AUTO_MERGE.

.gitte-override.yml

--- # .gitte.yml
projects:
  example-com:
    remote: [email protected]:cego/example.com
    default_branch: master
    actions:
      up: ["docker-compose", "up"]
--- # .gitte-override.yml
projects:
  example-com:
    actions: {}

Config and Override files are deep extended enabling developers to opt-out or opt extra stuff in.

Add --list command

Add and option to output projects with script tragets eg.
$ git-local-devops --list
project1: [ up, down]
project2: [ up, down, clean]

Logging to file and matching regex should happen during execution, instead of batching.

Right now, output is saved to a file once everything finishes, likewise the hints are checked when everything have finished.

If an action is running for suspiciously long time, one could be interested in the current status/log of the action.

To fix, use execa instead of promisify-child-process and enable hooks that saves and regex matches relevant information as it comes in.

This way we can also avoid having a huge buffer for all stdout/stderr, and only save the produced hints.

Also it would be nice to maybe display the 5 latest log messages from stdout under the progressbar

Make "run" command default

Currenctly I have to run git-local-devops run up sn but since up is a custom defined action, I would prefer to ommit the run part of the command.

So git-local-devops up sn is equvivalent with git-local-devops run up sn by making run the default command.

Add --no-needs option

If my project needs to up a mysql before upping my project, i want to be able to add --no-needs option, to skip upping mysql if it is already running.

Support for packages

If the project I am working on depends on a package, fx. a client to a service I cannot develop the client and test it with Gitte.

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.