Code Monkey home page Code Monkey logo

flakeaway's People

Contributors

danth avatar dependabot[bot] avatar github-actions[bot] avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

flakeaway's Issues

Support pushing to Cachix

Description

  • Users should be able to configure Cachix per-repository
  • Then, everything built for that repository will be pushed to the corresponding cache
  • A link to the cache will appear in status messages

Use case

Users can already run a cache on the Flakeaway server directly, however some may prefer to use this separately hosted option to reduce load.

Include / Exclude outputs

Description

Support a configuration file within each repository which globs for flake outputs to include or exclude.

Use case

  • Allows problematic outputs to be disabled
  • Allows Flakeaway to be used only for running checks

Automatically update flake.lock

Description

Flakeaway should offer the ability to automatically update flake.lock at a configurable interval.

Advantages

Keeps the flake inputs up-to-date without it having to be done manually.

Implementation details

  • The interval should default to around once per week.
  • Changes must be made via a pull request to avoid breaking the main branch.
    • The pull request may be merged automatically once checks (including checks by other apps) pass.
      • This may be implemented using GitHub's auto-merge feature.
    • Pull requests should merged using the rebase strategy to reduce unnecessary merge commits.
    • Flakeaway must not have more than one PR open at any given time.
      • If a pull request remains open until the next interval, it should either be updated via a force-push, or closed and a new one opened.

Display out-of-memory failures differently to normal failures

Description

Build failures caused by the builder not having enough RAM should be detected and reported with a different message.

Advantages

Allows the user to know why the build is failing, when it works locally.

Implementation details

No response

Outputs for sanitized branches are removed

If a branch is not a valid filename, its name is sanitized and outputs are stored under the sanitized name instead.

Later, those outputs can be deleted because a branch does not exist with the sanitized name.

Possible solutions:

  • Sanitize the list of existing branches
  • Hash or base64-encode branch names rather than sanitizing them

System errors during evaluation are not detected

Current behaviour

If an evaluation uses an import-from-derivation which requires an unsupported system, the job is no longer marked as skipped.

Expected behaviour

The evaluation should be skipped rather than fail.

System information

No response

Log output

No response

Monitor disk usage

Jobs should be paused if there is not much disk space on the server. Perhaps add a job to run the garbage collector.

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.