npm install
npm run build
tar czvf app-1.1.tar.gz dist/
FROM nginx:stable
COPY . /usr/share/nginx/www/html/
npm install
npm run build
docker build -t app-1.1 ./dist/
FROM node:8 AS build-env
COPY . .
RUN npm ci && npm run build
FROM nginx:stable
COPY --from=build-env /dist \
/usr/share/nginx/www/html/
build-step.sh
docker build -t app-1.1. ./dist/
FROM private.registry/node-base
ONBUILD COPY package.json .
ONBUILD RUN npm ci
ONBUILD COPY . .
ONBUILD RUN npm run build
Dockerfile
FROM private.registry/node-build AS build-env
FROM private.registry/static
version: '2'
services:
file-api-qa3:
env:
DB_NAME: file-api-qa3
ports:
- 8191:8080
version: '2'
services:
file-api:
env:
SERVICE_NAME: file-api-$VARIANT
DB_NAME: file-api-$VARIANT
ports:
- 8080
file-api-qa3.rancher.internal
file-api-qa3.consul
file-api-qa3.qa-ns
{{range services}}
{{$name := .Name}}
{{$service := service .Name}}
upstream {{$name}} {
{{range $service}}
server {{.Address}}:{{.Port}};
{{else}}server 127.0.0.1:65535;
{{end}}
} {{end}}
statuses = ','.join(['trashed', 'released'])
params = {
'jql': "status in ({1})".format(statuses),
'fields': 'id,key'
}
rq.get('https://jira/rest/api/2/search',
params=params)
docker run \
--name db-file-api-$VARIANT \
-p 5432 \
postgres:9.6
export PORT=$(docker port db-file-api-$VARIANT 5432 |
sed 's/.*:\([0-9]\+\)$/\1/g')
docker exec -t -i \
db-file-api-$VARIANT \
psql -c test-dumb.sql
createdb db-file-api-$VARIANT \
-t file-api-prod-db-template
dropdb db-file-api-$VARIANT
git clone git:server/internal-services-new2
docker build -t fileStorageApi .
docker run -e DB_NAME=testdb1
curl https://vm-tst-app-1:8191/
git clone git:server/file-api
docker build -t file-api .
docker run -e DB_NAME=file-api-$VARIANT
curl https://file-api-$VARIANT.test/
backend {
name = "file-api"
resources {
swagger {
name = "file-api-swagger"
dockerFile = "swagger.Dockerfile"
}
}
}
service {
name = "file-api"
}
export TEST_TAGS="file-api"
it('@file-api загружает файл', () => {
/* ... */
});
Компонент | ❗ | 🐛 | 🔥 |
---|---|---|---|
Админка | |||
Логин | |||
Заявки | |||
Клиенты |
Компонент | ❗ | 🐛 | 🔥 |
---|---|---|---|
Админка | 6 | ||
Логин | 10 | ||
Заявки | 9 | ||
Клиенты | 8 |
2 Blocker * 10
+ 1 Critical * 5
+ 8 Major * 3
+ 6 Normal * 1
Компонент | ❗ | 🐛 | 🔥 |
---|---|---|---|
Админка | 6 | 13 | 78 |
Логин | 10 | 10 | 100 |
Заявки | 9 | 24 | 216 |
Клиенты | 8 | 3 | 24 |
Андрей Ермаков, Тинькофф.ру
Как мы пришли к Continuous Delivery