Comments (5)
Is there a Dockerfile with the pipelines command and PHP already installed?
No, or none that I know about.
have you given any thought to whether this is possible?
Yes, I did. The Dockerfile itself is less the problem, pipelines need to be aware that it is dockerized.
This is merely meta. Pipelines can already be run within Docker, that is the "PIP - Pipelines Inside Pipelines" feature.
It then works very similar as you have outlined.
However you would need to have Docker as a dependency. And that you already have. And then pipelines only needs some PHP version with little requirements. So it should be more straight forward to just install that (take any PHP 5.3.3 - PHP 8.1*) and execute the pipelines.phar file.
Which operating system are you using?
from pipelines.
@phitoduck I quickly wrapped one docker image up, so there is something to play:
$ docker run --rm ktomk/pipelines:pipelines
pipelines version 0.0.57+5-g712771b+dirty
The default working directory is /app
you can use to mount stuff in:
$ docker run --rm -it --entrypoint /bin/pwd ktomk/pipelines:pipelines
/app
to hint pipelines inside pipelines (here docker) the path to the original project directory, there is the PIPELINES_PROJECT_PATH
(see README.md for a bit more description) - it is used so that pipelines can - when it detects it runs inside docker (might need more ENV parameters) to mount from host in case the --deploy mount
option is in use (but the current container has copy
).
sorry for the rough description, merely the quick hint that there are some environment variables if set, it could already run with this image.
I'll add lib/container/pipelines.sh
later and link it here, it is the build script for the container.
from pipelines.
@phitoduck please find an experimental branch docker-pipelines
to kick around with. feel free for any kind of feedback and questions. I'll think a bit about what is needed so that pipelines becomes aware running inside a container without a pipeline is already active.
there will be a couple of rough edges, feel free to name anything you run over.
from pipelines.
@phitoduck if you'd like to contribute a Dockerfile for this I'm open to it. For the moment I'd keep this on a temporary branch and will rebase it occasionally.
from pipelines.
Wow, sorry for totally dropping off. Thanks for looking into this. It may be another while before I can look at this, but I think my team at work would really like this since it would make it easier to reproduce our exact pipeline locally.
from pipelines.
Related Issues (20)
- 'image' required in service definition HOT 3
- `step.clone-path` does not match current Bitbucket behavior HOT 4
- Support for `condition` HOT 4
- (Some) Anchors Do Not Work - Raises Invalid YAML HOT 12
- Support for 'docker' in 'options' HOT 9
- Failed to parse validated YAML file HOT 2
- /bin/sh: 5: source: not found HOT 12
- Pipelines Fatal Environment Definition Error is puzzling HOT 11
- BITBUCKET_REPO_SLUG holds the `.git` extension HOT 6
- PHP Deprecated: trim(): ... no pipeline to run! HOT 7
- script non-zero exit status: 243 HOT 3
- pipelines: file parse error: 'image' required in service definition HOT 1
- coverage-checker.php deprecated notice HOT 1
- Parallel step support for fail-fast and steps properties HOT 3
- Validator fails on pipes in steps HOT 3
- Dealing with SSH stuff HOT 16
- Services support (e.g. mysql) HOT 5
- Default pipeline with parallel fails validation HOT 3
- Working with private repos HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pipelines.