Initial pipeline setup.
This commit is contained in:
parent
58ef009b88
commit
edd2794eeb
35
Jenkinsfile
vendored
Normal file
35
Jenkinsfile
vendored
Normal file
@ -0,0 +1,35 @@
|
||||
pipeline{
|
||||
agent any
|
||||
stages{
|
||||
stage("install") {
|
||||
steps {
|
||||
nodejs('NodeJS (17.4.0)') {
|
||||
sh "npm install"
|
||||
}
|
||||
}
|
||||
}
|
||||
stage("build") {
|
||||
steps {
|
||||
nodejs('NodeJS (17.4.0)') {
|
||||
sh "npm run build"
|
||||
}
|
||||
}
|
||||
}
|
||||
stage("test") {
|
||||
steps {
|
||||
nodejs('NodeJS (17.4.0)') {
|
||||
sh "npm run test"
|
||||
}
|
||||
}
|
||||
}
|
||||
stage("publish docs") {
|
||||
steps {
|
||||
nodejs('NodeJS (17.4.0)') {
|
||||
sh "npm run docs"
|
||||
}
|
||||
publishHTML([allowMissing: false, alwaysLinkToLastBuild: false, keepAll: false, reportDir: 'docs', reportFiles: 'index.html', reportName: 'AudioShowKit JSDocs', reportTitles: ''])
|
||||
publishHTML([allowMissing: false, alwaysLinkToLastBuild: false, keepAll: false, reportDir: 'docs', reportFiles: 'index.html', reportName: 'AudioShowKit Demo', reportTitles: ''])
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
7633
package-lock.json
generated
7633
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
15
package.json
15
package.json
@ -3,20 +3,29 @@
|
||||
"version": "1.0.0",
|
||||
"description": "",
|
||||
"main": "app.js",
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"start": "node app.js",
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
"build": "webpack --config webpack.prod.js",
|
||||
"watch": "webpack serve --config webpack.dev.js",
|
||||
"test": "echo \"No test specified yet...\" && exit 0",
|
||||
"docs": "jsdoc src -r -d docs"
|
||||
},
|
||||
"author": "",
|
||||
"license": "ISC",
|
||||
"devDependencies": {
|
||||
"@babel/core": "^7.17.9",
|
||||
"@babel/preset-env": "^7.16.11",
|
||||
"babel-loader": "^8.2.4",
|
||||
"css-loader": "^6.7.1",
|
||||
"eslint": "^8.13.0",
|
||||
"eslint-plugin-jsdoc": "^39.2.1",
|
||||
"html-loader": "^3.1.0",
|
||||
"html-webpack-plugin": "^5.5.0",
|
||||
"jsdoc": "^3.6.10",
|
||||
"style-loader": "^3.3.1",
|
||||
"webpack": "^5.72.0",
|
||||
"webpack-cli": "^4.9.2",
|
||||
"webpack-dev-server": "^4.8.1",
|
||||
"webpack-merge": "^5.8.0"
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,4 @@
|
||||
import "./styles/songplayer.css";
|
||||
// TODO: Finish playlist, and basic music playback functionality.
|
||||
// TODO: function to easily bind element styling to frequency bin.
|
||||
// TODO: adjust frequency bin interactively resulting in change in output.
|
||||
// TODO: Set up global scope audioshowkit object.
|
||||
|
16
src/demo/index.html
Normal file
16
src/demo/index.html
Normal file
@ -0,0 +1,16 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>AudioShowKit Demo</title>
|
||||
<script src="../audioshowkit.js" defer></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
0
src/demo/main.css
Normal file
0
src/demo/main.css
Normal file
@ -1,21 +1,39 @@
|
||||
import path from "path";
|
||||
import HtmlWebpackPlugin from "html-webpack-plugin";
|
||||
|
||||
export default {
|
||||
entry: {
|
||||
audioshowkit: "./src/audioshowkit.js"
|
||||
audioshowkit: path.resolve("./src/audioshowkit.js"),
|
||||
},
|
||||
module: {
|
||||
rules: [
|
||||
{
|
||||
test: /\.html$/i,
|
||||
loader: "html-loader",
|
||||
test: /\.m?js$/,
|
||||
exclude: /(node_modules|bower_components)/,
|
||||
use: {
|
||||
loader: "babel-loader",
|
||||
options: {
|
||||
presets: ["@babel/preset-env"]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.css$/i,
|
||||
use: ["style-loader", "css-loader"],
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.html$/i,
|
||||
loader: "html-loader",
|
||||
},
|
||||
]
|
||||
},
|
||||
output: {
|
||||
filename: "[name].js",
|
||||
path: "./dist"
|
||||
}
|
||||
path: path.resolve("./dist")
|
||||
},
|
||||
plugins: [
|
||||
new HtmlWebpackPlugin({
|
||||
template: path.resolve("./src/demo/index.html"),
|
||||
})
|
||||
]
|
||||
};
|
@ -1,12 +1,14 @@
|
||||
import merge from "webpack-merge";
|
||||
import webpackCommon from "./webpack.common";
|
||||
import { merge } from "webpack-merge";
|
||||
import path from "path";
|
||||
import webpackCommon from "./webpack.common.js";
|
||||
|
||||
|
||||
const devConfig = {
|
||||
mode: "development",
|
||||
devtools: "inline-source-map",
|
||||
|
||||
devServer: {
|
||||
static: "./dist"
|
||||
static: path.resolve("./dist"),
|
||||
open: true
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -1,12 +1,9 @@
|
||||
import merge from "webpack-merge";
|
||||
import webpackCommon from "./webpack.common";
|
||||
import { merge } from "webpack-merge";
|
||||
import webpackCommon from "./webpack.common.js";
|
||||
|
||||
|
||||
const prodConfig = {
|
||||
mode: "production",
|
||||
output: {
|
||||
filename: "[name].js",
|
||||
path: "./public"
|
||||
}
|
||||
};
|
||||
|
||||
export default merge(webpackCommon, prodConfig);
|
Loading…
Reference in New Issue
Block a user