From 756fbc5649f492d53ff7ad1aecb4557ca7171c98 Mon Sep 17 00:00:00 2001 From: Joshua Glemza Date: Thu, 9 Feb 2023 19:47:07 -0500 Subject: [PATCH] It's alive --- .dockerignore | 8 ++ .gitignore | 1 + CloudronManifest.json | 11 ++- Dockerfile | 7 +- package.json | 190 ------------------------------------------ start.sh | 5 +- 6 files changed, 23 insertions(+), 199 deletions(-) create mode 100644 .dockerignore create mode 100644 .gitignore delete mode 100644 package.json diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..6810bca --- /dev/null +++ b/.dockerignore @@ -0,0 +1,8 @@ +.git +.gitignore +.dockerignore +test +CloudronManifest.json +README.md +DESCRIPTION.md + diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..496ee2c --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.DS_Store \ No newline at end of file diff --git a/CloudronManifest.json b/CloudronManifest.json index 41ad120..19e53c7 100644 --- a/CloudronManifest.json +++ b/CloudronManifest.json @@ -1,7 +1,12 @@ { - "version": "0.1.0", + "manifestVersion": 2, + "title": "RSSHub", + "id": "com.hwarf.rsshub", + "version": "1.0.0", + "runtimeDirs": [ "/home/cloudron/.npm" ], "healthCheckPath": "/", "httpPort": 1200, - "runtimeDirs": [ "/home/cloudron/.npm" ], - "manifestVersion": 2 + "addons": { + "localstorage": {} + } } diff --git a/Dockerfile b/Dockerfile index 408ec4c..ef0b877 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,10 +5,9 @@ WORKDIR /app/code/ RUN git clone https://git.hwarf.com/jglemza/RSSHub.git /app/code -RUN npm install +RUN npm install --omit=dev #RUN npm ci --omit=dev -ADD start.sh /app/pkg/ - -CMD [ "/app/pkg/start.sh" ] +COPY start.sh /app/pkg/ +CMD [ "/app/pkg/start.sh" ] \ No newline at end of file diff --git a/package.json b/package.json deleted file mode 100644 index 4cc8b1e..0000000 --- a/package.json +++ /dev/null @@ -1,190 +0,0 @@ -{ - "name": "rsshub", - "version": "1.0.0", - "description": "Make RSS Great Again!", - "main": "lib/pkg.js", - "files": [ - "lib" - ], - "scripts": { - "start": "node lib/index.js", - "dev": "cross-env NODE_ENV=dev nodemon --inspect lib/index.js", - "profiling": "NODE_ENV=production node --prof lib/index.js", - "docs:dev": "vuepress dev docs", - "docs:build": "vuepress build docs", - "build:all": "npm run build:radar && npm run build:maintainer", - "build:radar": "node scripts/workflow/build-radar.js", - "build:maintainer": "node scripts/workflow/build-maintainer.js", - "lint": "eslint .", - "format": "eslint \"**/*.{js,yml}\" --fix && node docs/.format/format.js && prettier \"**/*.{js,json}\" --write", - "format:staged": "eslint \"**/*.{js,yml}\" --fix && node docs/.format/format.js --staged && pretty-quick --staged --verbose --pattern \"**/*.{js,json}\"", - "format:check": "eslint \"**/*.{js,yml}\" && prettier-check \"**/*.{js,json}\"", - "jest": "cross-env NODE_ENV=test jest --runInBand --forceExit --detectOpenHandles", - "jest:coverage": "cross-env NODE_ENV=test jest --coverage --reporters=default --reporters=jest-junit --runInBand --forceExit --detectOpenHandles", - "jest:watch": "cross-env NODE_ENV=test jest --watch", - "test": "npm run format:check && npm run jest:coverage" - }, - "reporters": [ - "default", - "jest-junit" - ], - "jest-junit": { - "outputDirectory": "coverage" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/DIYgod/RSSHub.git" - }, - "keywords": [ - "RSS" - ], - "gitHooks": { - "pre-commit": "npm run format:staged" - }, - "author": "DIYgod", - "license": "MIT", - "bugs": { - "url": "https://github.com/DIYgod/RSSHub/issues" - }, - "homepage": "https://github.com/DIYgod/RSSHub#readme", - "devDependencies": { - "@napi-rs/pinyin": "1.7.1", - "@types/koa": "2.13.5", - "@vercel/nft": "0.22.6", - "@vuepress/plugin-back-to-top": "1.9.8", - "@vuepress/plugin-google-analytics": "1.9.8", - "@vuepress/plugin-pwa": "1.9.8", - "@vuepress/shared-utils": "1.9.8", - "cross-env": "7.0.3", - "eslint": "8.33.0", - "eslint-config-prettier": "8.6.0", - "eslint-plugin-prettier": "4.2.1", - "eslint-plugin-yml": "1.4.0", - "fs-extra": "11.1.0", - "jest": "29.4.2", - "jest-junit": "15.0.0", - "meilisearch": "0.31.1", - "mockdate": "3.0.5", - "nock": "13.3.0", - "nodemon": "2.0.20", - "prettier": "2.8.4", - "prettier-check": "2.0.0", - "pretty-quick": "3.1.3", - "remark": "13.0.0", - "remark-frontmatter": "3.0.0", - "remark-gfm": "1.0.0", - "remark-pangu": "2.2.0", - "remark-parse": "9.0.0", - "remark-preset-prettier": "0.5.1", - "remark-stringify": "9.0.1", - "request-promise-native": "1.0.9", - "staged-git-files": "1.3.0", - "string-width": "4.2.3", - "supertest": "6.3.3", - "tosource": "2.0.0-alpha.3", - "unified": "9.2.2", - "vuepress": "1.9.8", - "vuepress-plugin-meilisearch": "0.13.0", - "vuepress-plugin-sitemap": "2.3.1", - "yorkie": "2.0.0" - }, - "dependencies": { - "@koa/router": "12.0.0", - "@postlight/parser": "2.2.3", - "@sentry/node": "7.36.0", - "aes-js": "3.1.2", - "art-template": "4.13.2", - "bbcodejs": "0.0.4", - "cheerio": "1.0.0-rc.12", - "chrono-node": "2.5.0", - "city-timezones": "1.2.1", - "crypto-js": "4.1.1", - "currency-symbol-map": "5.1.0", - "dayjs": "1.11.7", - "dotenv": "16.0.3", - "emailjs-imap-client": "3.1.0", - "entities": "3.0.1", - "etag": "1.8.1", - "fanfou-sdk": "4.2.0", - "git-rev-sync": "3.0.2", - "googleapis": "110.0.0", - "got": "11.8.6", - "https-proxy-agent": "5.0.1", - "iconv-lite": "0.6.3", - "instagram-private-api": "1.45.3", - "ioredis": "5.3.0", - "ip-regex": "4.3.0", - "is-localhost-ip": "2.0.0", - "jsdom": "21.1.0", - "json-bigint": "1.0.0", - "json5": "2.2.3", - "koa": "2.14.1", - "koa-basic-auth": "4.0.0", - "koa-favicon": "2.1.0", - "koa-mount": "4.0.0", - "lru-cache": "7.14.1", - "lz-string": "1.4.4", - "mailparser": "3.6.3", - "markdown-it": "13.0.1", - "module-alias": "2.2.2", - "parse-torrent": "9.1.5", - "pidusage": "3.0.2", - "plist": "3.0.6", - "proxy-chain": "2.2.0", - "puppeteer": "19.6.3", - "puppeteer-extra": "3.3.4", - "puppeteer-extra-plugin-stealth": "2.11.1", - "query-string": "7.1.3", - "rand-user-agent": "1.0.104", - "re2": "1.18.0", - "require-all": "3.0.0", - "rss-parser": "3.12.0", - "showdown": "2.1.0", - "simplecc-wasm": "0.1.5", - "socks-proxy-agent": "7.0.0", - "string-similarity": "4.0.4", - "tiny-async-pool": "2.1.0", - "torrent-search-api": "2.1.4", - "tough-cookie": "4.1.2", - "twitter-api-v2": "1.14.1", - "winston": "3.8.2", - "xml2js": "0.4.23" - }, - "jest": { - "testMatch": [ - "**/test/**/*.js" - ], - "testPathIgnorePatterns": [ - "/node_modules/", - "/lib/" - ], - "coverageReporters": [ - "text-summary", - "lcov" - ], - "collectCoverageFrom": [ - "lib/**/*.js", - "!lib/routes/**/*.js", - "!lib/v2/**/*.js", - "!lib/radar-rules.js", - "!lib/router.js" - ], - "bail": true, - "testEnvironment": "node", - "moduleNameMapper": { - "@/(.*)": "/lib/$1" - } - }, - "nodemonConfig": { - "watch": [ - ".env", - "lib", - "test" - ], - "ext": "art,js,mjs,json" - }, - "engines": { - "node": ">=14" - } -} - diff --git a/start.sh b/start.sh index b2ca53a..4b34780 100755 --- a/start.sh +++ b/start.sh @@ -1,5 +1,6 @@ #!/bin/bash -set -eu -chown -R cloudron:cloudron /app/code +set -ex + echo "Start RSSHub" +chown -R cloudron:cloudron /home/cloudron/.npm exec /usr/local/bin/gosu cloudron:cloudron npm start --prefix /app/code