jameslnewell / buildkite-pipelines Goto Github PK
View Code? Open in Web Editor NEWGenerate Buildkite pipelines from code.
Home Page: https://jameslnewell.github.io/buildkite-pipelines/api/index.html
Generate Buildkite pipelines from code.
Home Page: https://jameslnewell.github.io/buildkite-pipelines/api/index.html
so ppl don't have to install deps and setup their own
e.g.
Without TS: jameslnewell/buildkite-pipelines:vX.Y.Z
With TS: jameslnewell/buildkite-pipelines:vX.Y.Z-typescript
Don't duplicate command info
e.g. so we discover earlier when invalid values are set with useful stack traces, rather than later when stringifying and we don't have contextual stack traces
# specify NPM global packages install path
# @see https://github.com/nodejs/docker-node/blob/main/docs/BestPractices.md#global-npm-dependencies
ENV NPM_CONFIG_PREFIX=/home/node/.npm-global
# add NPM binaries from global packages to PATH
# @see https://github.com/nodejs/docker-node/blob/main/docs/BestPractices.md#global-npm-dependencies
ENV PATH=$PATH:/home/node/.npm-global/bin
WORKDIR /tool
# install system dependencies
RUN apk add --no-cache --update xyz
# install NPM dependencies
COPY package.json package-lock.json ./
RUN --mount=type=secret,id=npmrc,dst=/root/.npmrc \
npm ci && \
npm cache clean --force
# copy files required at runtime
COPY cli.js ./
COPY dist ./dist
# install as a global package
RUN npm -g install file://.
WORKDIR /workdir
search up for package.json
from the pipeline file and check the version installed is compatible with the version in the docker image
maybe consider installing other deps in future in order to install abstractions - maybe different docker variant or configurable flag - or just let dev do that before they call buildkite-pipelines
- don't force the entrypoint
Run git push
remote: error: GH00[6](https://github.com/jameslnewell/buildkite-pipelines/actions/runs/5664537184/job/15348130462#step:14:7): Protected branch update failed for refs/heads/main.
remote: error: Changes must be made through a pull request.
To https://github.com/jameslnewell/buildkite-pipelines
! [remote rejected] main -> main (protected branch hook declined)
error: failed to push some refs to 'https://github.com/jameslnewell/buildkite-pipelines'
Error: Process completed with exit code 1.
https://github.com/jameslnewell/buildkite-pipelines/actions/runs/5664537184/job/15348130462
conditional steps based on diff
abstracting and reusing steps/pipelines
setting up to develop locally vs running on CI/CD (and potentially building your own docker container)
e.g. @org/pkg.name
=> org-pkg-name
- docker#v5.3.0:
image:
always-pull:
mount-ssh-agent:
volumes:
command:
environment:
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.