Git Product home page Git Product logo

Comments (4)

parsley42 avatar parsley42 commented on June 1, 2024

Done so far:

  • Robot bootstrap.py plugin init starts a pipeline that will clone a repo for an existing robot, and restarts

Still to do:

  • The init pipeline should also run any .gopherci/pipeline.sh|py|rb, to e.g. build loadable go modules (make Clu do this)
  • Need a new "state" plugin back backing up and restoring $GOPHER_HOME/state, the bootstrap pipeline creates $GOPHER_HOME/.restore which should trigger an automatic restore (and removal of that file)
  • The setup plugin needs an init pipeline that runs when no GOPHER_ENCRYPTION_KEY or GOPHER_CUSTOM_REPOSITORY is set, and there's no $GOPHER_CONFIGDIR/conf/gopherbot.yaml
    • Copy contents of robot.skel to $GOPHER_CONFIGDIR
    • Write GOPHER_PROTOCOL=terminal to .env
    • Restart to run the setup plugin in terminal mode

from gopherbot.

parsley42 avatar parsley42 commented on June 1, 2024
  • Generate ssh key pair
  • Add admin user
  • save-config job
  • Default custom/.robot-state -> indicates state repo is in robot-state branch
  • Update backup job to check for $GOPHER_CONFIGDIR/.robot-state
  • Update restore job to check for $GOPHER_CONFIGDIR/.robot-state
  • Update save job to use $(git remote get-url origin) when .git already exists
  • Check update job to verify it prefers get-url origin also when .git present
  • modify update.sh plugin to include commands for backup, restore and save
  • rewrite "update" job in bash

from gopherbot.

parsley42 avatar parsley42 commented on June 1, 2024

Generate THREE ssh keypairs:

  • Deploy key - read-only, include flattened private in .env, public in ssh/deploy_rsa.pub
  • Manage key - encrypted read-write deploy key the robot uses for read-write access to it's own repository
  • Robot key - encrypted (default same passphrase) key the robot uses for all other work

from gopherbot.

parsley42 avatar parsley42 commented on June 1, 2024

Closed by recent merges from parsley42/gopherbot

from gopherbot.

Related Issues (20)

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.