Compare commits

...

2 Commits

Author SHA1 Message Date
1194fc63c6 fix(livereload): fix exclusions bug
- read environment var as array
- convert array elements to regex objects
- update environment variable defaults
2021-07-28 03:51:56 -06:00
574b6e1e07 refactor(dockerfile): update existing packages to latest versions 2021-07-28 03:50:03 -06:00
2 changed files with 15 additions and 9 deletions

View File

@ -21,9 +21,10 @@ EXPOSE 35729
# add tini, timezone support and create certificate directories # add tini, timezone support and create certificate directories
RUN apk --update --no-cache add \ RUN apk --update --no-cache add \
tini \ tini \
tzdata \ tzdata \
openssl openssl \
&& apk --update --no-cache upgrade
# labels # labels
LABEL org.opencontainers.image.authors="Asif Bacchus <asif@asifbacchus.dev>" LABEL org.opencontainers.image.authors="Asif Bacchus <asif@asifbacchus.dev>"
@ -40,7 +41,7 @@ ENV PATH=/home/node/.npm-global/bin:$PATH
ENV TZ="Etc/UTC" ENV TZ="Etc/UTC"
ENV LR_PORT=35729 ENV LR_PORT=35729
ENV LR_EXTS="html,xml,css,js,jsx,ts,tsx,php,py" ENV LR_EXTS="html,xml,css,js,jsx,ts,tsx,php,py"
ENV LR_EXCLUDE=".git/,.svn/,.vscode/,.idea/" ENV LR_EXCLUDE=".vscode/,.idea/,.tmp$,.swp$"
ENV LR_DELAY=500 ENV LR_DELAY=500
ENV LR_DEBUG=true ENV LR_DEBUG=true
ENV LR_HTTPS=true ENV LR_HTTPS=true

View File

@ -1,6 +1,5 @@
// implement node-livereload over an HTTPS connection // implement node-livereload over an HTTP or HTTPS connection
// healthcheck function
function healthcheck() { function healthcheck() {
const express = require('express'); const express = require('express');
const http = require('http'); const http = require('http');
@ -23,15 +22,21 @@ function healthcheck() {
hServer.listen(3000); hServer.listen(3000);
} }
// load livereload module // load modules
const livereload = require('livereload'); const livereload = require('livereload');
const fs = require('fs');
// process from environment variable as array and convert elements to RegEx objects
const extraExclusions = process.env.LR_EXCLUDE.split(",");
extraExclusions.forEach((exclusion, idx) => {
extraExclusions[idx] = new RegExp(exclusion);
});
// set createServer options // set createServer options
const fs = require('fs');
const options = { const options = {
port: process.env.LR_PORT, port: process.env.LR_PORT,
exts: process.env.LR_EXTS, exts: process.env.LR_EXTS,
exclusions: process.env.LR_EXCLUDE, exclusions: extraExclusions,
usePolling: true, usePolling: true,
delay: process.env.LR_DELAY, delay: process.env.LR_DELAY,
}; };