sprucedev / dockci Goto Github PK
View Code? Open in Web Editor NEWCI, but with that all important Docker twist
License: ISC License
CI, but with that all important Docker twist
License: ISC License
https://trello.com/c/PxM88nW7/58-feature-request-user-logins-and-access
For the enterprise
As a mega corp
I would like to have user logins job access
So that user can only see and access there allowed jobs
https://trello.com/c/LnmvKlcR/97-provision-stage-link-to-build-that-built-the-service
As a developer
I want to see the job for a provisioned container's image
So that I can trace back and see how my services were built
https://trello.com/c/qEsXSzdH/81-share-build-cache
As a user
I want to pull the latest built image of a repository from the registry when I build
So that I share the cache across servers
From #71
https://trello.com/c/oM8cJ3A8/56-feature-request-hook-to-trigger-dockci-build
As a DockCi job owner
I would like to tigger a DockCi job automatically via a git commit or tigger from builder server
Build would run with out any user intervention
Adding new project with pre-existing slug does not result in error, instead it results in the pre-existing project's details being updated.
I reckon this is unexpected behaviour for most people.
https://trello.com/c/BgGEm8a9/28-bug-path-security
Issue with opening files from a filename given by the user: https://github.com/RickyCook/DockCI/blob/f9277a128ebb6247381a2256116eb12f50608d6c/dockci/views/job.py#L132
https://trello.com/c/QPGCOgGN/61-refresh-build-status-info-live
As a developer
I want job status and info to refresh live
So that I don't have to keep refreshing the page
Depends:
https://trello.com/c/7XqhzP8y/59-feature-request-log-time-taken-per-build-step
As a developer
I want to see how long docker job steps take
So that I know where to optimise build times
Testing c627975 today, I noticed that the semantic version detection is broken.
I'm investigating.
https://trello.com/c/bhXtWoWu/39-bug-incompatible-client-server-versions
Docker-py uses a static Docker version as the client version. DockCI shouldn't care, and just match the version of the server
https://trello.com/c/mMAq5HRv/82-task-fix-dockci-demo-email
Email in on http://demo.dockci.io is broken because I moved thatpanda.com from my old provider. Need to get maybe mailgun or some such
https://trello.com/c/7z38Zi5N/18-github-hook-registration-ui
As a developer
I want to choose my Github repo and have DockCI setup a push hook
So that I can quickly, and effortlessly setup DockCI for my project
Assumptions
https://trello.com/c/pHXWt9zU/12-generic-push-hooks
As a developer
I want to trigger builds from an external tool
So that my build flow is automated
Tasks linked in references
As discussed - it would be advisable to use Debian as the host OS rather than Ubuntu
https://trello.com/c/pfzgNTkY/35-re-run-errored-build-button
As a user
I want a re-run button
So that I don't have to copy & paste the git commit ID again and again
Assumptions
broken
builds; not failed
, or success
https://trello.com/c/BALqAJyX/50-deps-dependencies-for-dependencies
As a developer
I want to specify a dependency hierarchy
So that my dependent services can be more complex
Example:
Search microservice dependency that requires a database/elasticsearch to function
https://trello.com/c/OgpmWE3i/78-delete-jobs
As a developer
I want to delete projects
So that my UI is uncluttered
https://trello.com/c/FiW5mTIM/3-setup-py
As a tools admin
I want to install DockCI via pip
So that I don't have to go through a complex setup process
https://trello.com/c/o1MOyWL3/76-bug-git-changes-use-build-time-not-commit-time
As a developer
I want the git change log to show a diff since my most recent git ancestor, not most recent job that is a git ancestor
So that the history is not long (and more relevant) when started out of order
https://trello.com/c/sNWaRypo/66-cli-build-working-directory
As a developer
I want to start an "ad-hoc" job of my current working directory
So that I can test without needing to commit
So that I can integrate DockCI with an external build tool
Example
$ dockci build
--- git_prepare ---
Cloning into '/tmp/tmp6zbq69qr'...
Note: checking out '2d718539a461b3af3d34883d72d06162c23f29a8'.
...
--- git_info ---
...
$ dockci build ~/code/dockci
...
Assumptions
Requires a single log stream resource, separate from the current AJAX format of multiple requests
Questions
build
for CLI command (since we don't have a build
model any more)https://trello.com/c/RPFCVBPz/20-slack-group-notifications
As a developer
I want to be notified via Slack (https://slack.com) group chat when my job fails
So that I don't have to keep checking the CI server
Assumptions
https://trello.com/c/GmoZ8klM/67-cli-list-all-built-versions
As a developer
I want to list all available versions of a project
So that I can get information about my project to script with/etc
Assumptions
My steps:
https://trello.com/c/gM4bqPzE/60-github-ci-status-push
As a developer
I want to see CI build status on github commits
So that it's easy to see which commits passed in pull requests
Assumptions
https://trello.com/c/ZSal5Fik/65-cli-show-project-info
As a developer
I want to list project info from my working directory
So that integrate DockCI with my processes easily
Example
$ dockci show
URL: http://demo.dockci.io/projects/dockci
Last build: Passed
Last version: v0.0.2
$ dockci show ~/code/dockci
...
$ dockci show dockci
...
Notes
Can use remotes info to link the git working dir with the DockCI project, if the remotes match. What happens for HTTPS vs SSH clones though? GitHub we can pick up on; others maybe not?
https://trello.com/c/DOQlaX9k/52-implement-a-clean-up-queue
Idea: have a queue where clean up tasks are sent that:
https://trello.com/c/k5qdFWP9/41-gitter-group-notifications
As a developer
I want to be notified via Slack (https://slack.com) group chat when my build fails
So that I don't have to keep checking the CI server
Assumptions
When the UI calls dockerBuildLine
, on some {'stream':}
content, it will ansi_to_html
that content. This works until an ANSII sequence is started, and spans multiple stream
objects, because the formatting is "reset" after each.
https://trello.com/c/DM3jVTva/77-build-change-in-state-notification
As a developer
I want to be notified only when a project branch changes state
So that I can be notified, without total spam for every job
Dependencies: #207
Assumptions:
Create a new job, wait for job to complete and don't commit anything, run another job with the same commit hash, wait for end of build stage
Expected: Build stage is entirely cached
Actual: Nothing is cached
Create a new job, wait for job to complete, create a commit and change 1 file in an ADD directive in the Dockerfile
, run another job with the new commit, wait for end of build stage
Expected: Build stage is cached up until the ADD directive
Actual: Nothing is cached
Cause: Docker invalidates cache by multiple methods. The first check is on the file mtime
. Git (unfortunately in this case) checks out files, but does not set the file mtime
to the last commit time of files (the mtime
is the time that git wrote the file to disk) which causes Docker to invalidate the cache every time
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.