Compare commits

..

11 Commits

Author SHA1 Message Date
timvisee
71a925a674 Bump version to 3.4.4 2021-02-16 15:18:03 +01:00
timvisee
64d9cd694d Update dependencies 2021-02-16 15:15:28 +01:00
timvisee
94b78b425f Use node 15 Docker image on GitLab CI 2021-02-16 15:12:23 +01:00
timvisee
42e94139a2 Merge branch 'atomheartother:master' into 'master'
See https://github.com/timvisee/send/pull/6
2021-02-16 15:10:22 +01:00
E. Navennec
6bd6280fb5 Use up to date alpine images and not slim images 2021-02-16 14:56:39 +01:00
timvisee
1f2c524b40 Include redis-mock in main build to allow usage without Redis 2021-02-16 14:56:00 +01:00
timvisee
854810c242 Use short commit hashes in Docker image tags 2021-02-16 14:24:58 +01:00
timvisee
45024d3dc6 Rework GitLab CI configuration, always build Docker image artifact
This artifact will be used as master-branch and release image, without
building the image again
2021-02-16 14:12:49 +01:00
timvisee
0806b8fd9d Bump version to 3.4.3 2021-02-05 02:31:15 +01:00
timvisee
2dbc740998 Update dependencies 2021-02-05 02:29:19 +01:00
timvisee
5b9c8301c7 Fix incorrect environment variable for config property 2021-02-05 02:24:48 +01:00
5 changed files with 1068 additions and 1154 deletions

View File

@@ -1,4 +1,4 @@
image: "node:12-slim"
image: "node:15-slim"
stages:
- test
@@ -17,6 +17,7 @@ before_script:
- apt-get update
- apt-get install -y google-chrome-stable fonts-ipafont-gothic fonts-wqy-zenhei fonts-thai-tlwg fonts-kacst fonts-freefont-ttf libxss1 --no-install-recommends
# Build Send, run npm tests
test:
stage: test
script:
@@ -24,48 +25,81 @@ test:
- npm run lint
- npm test
# Release Docker image artifact for easy testing
# Build Docker image, export Docker image artifact
artifact-docker:
stage: artifact
image: docker:latest
needs: []
services:
- docker:dind
variables:
IMG_FILE: "send:git-$CI_COMMIT_SHORT_SHA.tar"
IMG_NAME: "send:git-$CI_COMMIT_SHORT_SHA"
before_script: []
script:
- docker build -t $IMG_NAME .
- docker image save -o $IMG_FILE $IMG_NAME
artifacts:
name: artifact-docker
paths:
- $IMG_FILE
expire_in: 1 week
# Release public Docker image for the master branch
release-docker-master:
stage: release
image: docker:latest
dependencies:
- artifact-docker
services:
- docker:dind
only:
- master
variables:
IMG_IMPORT_FILE: "send:git-$CI_COMMIT_SHORT_SHA.tar"
IMG_IMPORT_NAME: "send:git-$CI_COMMIT_SHORT_SHA"
IMG_NAME: "registry.gitlab.com/timvisee/send:master-$CI_COMMIT_SHORT_SHA"
before_script: []
script:
- export IMG_NAME=registry.gitlab.com/timvisee/send:master-$CI_COMMIT_SHA
# Login in to registry
- 'docker login registry.gitlab.com -u $DOCKER_USER -p $DOCKER_PASS'
# Build and push image, report image name
- docker build -t $IMG_NAME .
- docker push $IMG_NAME
- 'echo Docker image artifact published, available as:'
- 'echo " docker pull $IMG_NAME"'
# Load existing, retag for new image images
- docker image load -i $IMG_IMPORT_FILE
- docker tag $IMG_IMPORT_NAME $IMG_NAME
# Release public Docker image
# Publish tagged image
- docker push $IMG_NAME
- 'echo "Docker image artifact published, available as:" && echo " docker pull $IMG_NAME"'
# Release public Docker image for a version tag
release-docker:
stage: release
image: docker:latest
dependencies:
- artifact-docker
services:
- docker:dind
only:
- /^v(\d+\.)*\d+$/
variables:
IMG_IMPORT_FILE: "send:git-$CI_COMMIT_SHORT_SHA.tar"
IMG_IMPORT_NAME: "send:git-$CI_COMMIT_SHORT_SHA"
IMG_NAME: "registry.gitlab.com/timvisee/send:$CI_COMMIT_REF_NAME"
IMG_NAME_LATEST: "registry.gitlab.com/timvisee/send:latest"
before_script: []
script:
- export IMG_NAME=registry.gitlab.com/timvisee/send:$CI_COMMIT_REF_NAME
- export IMG_NAME_LATEST=registry.gitlab.com/timvisee/send:latest
# Login in to registry
- 'docker login registry.gitlab.com -u $DOCKER_USER -p $DOCKER_PASS'
# Build and push image, report image name
- docker build -t $IMG_NAME .
- docker tag $IMG_NAME $IMG_NAME_LATEST
# Load existing, retag for new image images
- docker image load -i $IMG_IMPORT_FILE
- docker tag $IMG_IMPORT_NAME $IMG_NAME
- docker tag $IMG_IMPORT_NAME $IMG_NAME_LATEST
# Publish tagged image
- docker push $IMG_NAME
- docker push $IMG_NAME_LATEST
- 'echo Docker image artifact published, available as:'
- 'echo " docker pull $IMG_NAME_LATEST"'
- 'echo " docker pull $IMG_NAME"'
- 'echo "Docker image artifact published, available as:" && echo " docker pull $IMG_NAME_LATEST" && echo " docker pull $IMG_NAME"'

View File

@@ -6,13 +6,13 @@
# Build project
FROM node:12 AS builder
FROM node:15.5.1-alpine AS builder
RUN set -x \
# Add user
&& addgroup --gid 10001 app \
&& adduser --disabled-password \
--gecos '' \
--gid 10001 \
--ingroup app \
--home /app \
--uid 10001 \
app
@@ -26,19 +26,17 @@ RUN set -x \
# Main image
FROM node:12-slim
FROM node:15.5.1-alpine
RUN set -x \
# Add user
&& addgroup --gid 10001 app \
&& adduser --disabled-password \
--gecos '' \
--gid 10001 \
--ingroup app \
--home /app \
--uid 10001 \
app
RUN apt-get update && apt-get -y install \
git-core \
&& rm -rf /var/lib/apt/lists/*
USER app
WORKDIR /app
COPY --chown=app:app package*.json ./

2116
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
{
"name": "send",
"description": "File Sharing Experiment",
"version": "3.4.2",
"version": "3.4.4",
"author": "Mozilla (https://mozilla.org)",
"contributors": [
"Tim Visee <3a4fb3964f@sinenomine.email> (https://timvisee.com)"
@@ -61,13 +61,13 @@
"cache": true
},
"engines": {
"node": "^12.16.3"
"node": "^15.5.1"
},
"devDependencies": {
"@babel/core": "^7.12.10",
"@babel/plugin-proposal-class-properties": "^7.12.1",
"@babel/core": "^7.12.16",
"@babel/plugin-proposal-class-properties": "^7.12.13",
"@babel/plugin-syntax-dynamic-import": "^7.2.0",
"@babel/preset-env": "^7.12.11",
"@babel/preset-env": "^7.12.16",
"@dannycoates/webcrypto-liner": "^0.1.37",
"@fullhuman/postcss-purgecss": "^1.3.0",
"@mattiasbuelens/web-streams-polyfill": "0.2.1",
@@ -113,12 +113,11 @@
"proxyquire": "^2.1.3",
"puppeteer": "^2.0.0",
"raw-loader": "^3.1.0",
"redis-mock": "^0.47.0",
"rimraf": "^3.0.0",
"script-loader": "^0.7.2",
"sinon": "^7.5.0",
"string-hash": "^1.1.3",
"stylelint": "^13.9.0",
"stylelint": "^13.10.0",
"stylelint-config-standard": "^19.0.0",
"stylelint-no-unsupported-browser-features": "^4.1.4",
"svgo": "^1.3.2",
@@ -136,9 +135,9 @@
"@dannycoates/express-ws": "^5.0.3",
"@fluent/bundle": "^0.13.0",
"@fluent/langneg": "^0.3.0",
"@google-cloud/storage": "^5.7.3",
"@google-cloud/storage": "^5.7.4",
"@sentry/node": "^5.30.0",
"aws-sdk": "^2.831.0",
"aws-sdk": "^2.844.0",
"body-parser": "^1.19.0",
"choo": "^7.0.0",
"cldr-core": "^35.1.0",
@@ -150,8 +149,9 @@
"mozlog": "^2.2.0",
"node-fetch": "^2.6.1",
"redis": "^2.8.0",
"redis-mock": "^0.47.0",
"selenium-standalone": "^6.23.0",
"ua-parser-js": "^0.7.23"
"ua-parser-js": "^0.7.24"
},
"availableLanguages": [
"en-US",

View File

@@ -213,7 +213,7 @@ const conf = convict({
footer_source_url: {
format: String,
default: 'https://github.com/timvisee/send',
env: 'SEND_FOOTER_CLI_URL'
env: 'SEND_FOOTER_SOURCE_URL'
}
});