Giter Site home page Giter Site logo

gitlab-runner-ctrl's Introduction

GitLab Runner Ctrl

Managing GitLab Runner from Web UI

Usage

  1. install vue-cli and run vue serve
  2. http://localhost:8081/
  3. Click Config and set GitLab URL, Access Token (requres sudo auth)
    • Save button will store them in the localstorage.
  4. Click Reload button to load data from gitlab.
    • data is cached in the localstorage

Features

  • Filter runner list by regexp.
  • Pause / Resume multiple runners with one-click.
  • Alter tags of multiple runners easily.

Note

  • This app sends O(N) requests (N:number of runners) due to gitlab's api interface.
  • Results are cached to local storage and only refreshed by reload button to prevent too much request.

Demo

https://blog.cormoran-web.com/gitlab-runner-ctrl/

Warning: this app stores access token in browser's local storage. I recommend running it on local.

Use Case

minimal GPU resource management on shared server

Gitlab runner can manage GPU resources by registering runners per GPU (I prepared scripts to register runners per GPU).

Because of the lack of functionality of gitlab's runner management page, this strategy has some trouble when sharing GPU servers with others who does not use CI.

GitLab Runner Ctrl can stop multi runners by one click (if you set appropriate tags) to release GPU resources for others.

resource management for multi-GPU program

To run multi-GPU program with GPU resource management on gitlab-ci, one of the easiest way is registering runners which use fixed multi GPUs.

ex)

  • runner: ServerXXX-GPU0 for GPU0
  • runner: ServerXXX-GPU1 for GPU1
  • runner: ServerXXX-GPU01 for GPU0 and GPU1, multi GPUs

You can switch runners (a little) easier by using GitLab Runner Ctrl.

gitlab-runner-ctrl's People

Contributors

cormoran avatar

Watchers

 avatar  avatar

Forkers

darcyg

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.