Compare commits
7 Commits
Author | SHA1 | Date |
---|---|---|
Nicolai Ort | b14fa05adc | |
Nicolai Ort | 7c71e94304 | |
Nicolai Ort | 8fa489f2bc | |
Nicolai Ort | 512acc0b8c | |
Nicolai Ort | 567ac07612 | |
Nicolai Ort | fa01864d0d | |
Nicolai Ort | 91b25c22ca |
3
.env
3
.env
|
@ -1,3 +1,4 @@
|
|||
SSL=false
|
||||
SSL=true
|
||||
DOMAIN=kauft.es
|
||||
DISABLE_PROVIDERS=false
|
||||
ENABLE_REGISTER=true
|
11
CHANGELOG.md
11
CHANGELOG.md
|
@ -2,8 +2,19 @@
|
|||
|
||||
All notable changes to this project will be documented in this file. Dates are displayed in UTC.
|
||||
|
||||
#### [0.1.2](https://git.odit.services/kauft.es/linkylinky/compare/0.1.1...0.1.2)
|
||||
|
||||
- API Endpoint to get all short urls [`fa01864`](https://git.odit.services/kauft.es/linkylinky/commit/fa01864d0de7921e741d63c3f5795161279ea478)
|
||||
- Changed the way that the migration get's triggered [`8fa489f`](https://git.odit.services/kauft.es/linkylinky/commit/8fa489f2bcd9d1ad63ab4581b7f3b27eee3d9038)
|
||||
- Get all api endpoints [`91b25c2`](https://git.odit.services/kauft.es/linkylinky/commit/91b25c22ca035aec5cc2fdc80ca4fbb56a2f8b65)
|
||||
- Added optional db volume to docker-compose [`7c71e94`](https://git.odit.services/kauft.es/linkylinky/commit/7c71e943041d8e3ac9dcf95cad27f2f0bc0b024c)
|
||||
- Prod db now resides in db folder [`512acc0`](https://git.odit.services/kauft.es/linkylinky/commit/512acc0b8c15d4cfbafef21ec20707bac4629ea4)
|
||||
|
||||
#### [0.1.1](https://git.odit.services/kauft.es/linkylinky/compare/0.1.0...0.1.1)
|
||||
|
||||
> 14 August 2021
|
||||
|
||||
- 🚀RELEASE 0.1.1 [`55d6b91`](https://git.odit.services/kauft.es/linkylinky/commit/55d6b91cc252ee6676d13df9abd8b61283a07f0f)
|
||||
- fix: Dockerfile [`807eb9c`](https://git.odit.services/kauft.es/linkylinky/commit/807eb9c267377df0b5f30f81eb380ef8a1c2add2)
|
||||
|
||||
#### [0.1.0](https://git.odit.services/kauft.es/linkylinky/compare/0.0.2...0.1.0)
|
||||
|
|
|
@ -6,6 +6,7 @@ RUN yarn --production --frozen-lockfile
|
|||
COPY migrations ./migrations
|
||||
COPY src/server.js ./
|
||||
COPY knexfile.js ./
|
||||
RUN mkdir db
|
||||
#
|
||||
# FROM astefanutti/scratch-node:16.0.0
|
||||
FROM node:16.6.2-alpine3.14
|
||||
|
@ -13,4 +14,4 @@ WORKDIR /app
|
|||
COPY --from=0 /app /app
|
||||
ENV NODE_ENV production
|
||||
EXPOSE 3000
|
||||
ENTRYPOINT ["node", "./server.js"]
|
||||
ENTRYPOINT ["/bin/sh", "-c", "yarn migrate && node ./server.js"]
|
|
@ -5,3 +5,5 @@ services:
|
|||
#image: registry.odit.services/kauft.es/linkylinky:latest
|
||||
ports:
|
||||
- 3000:3000
|
||||
#volumes:
|
||||
# - ./db:/app/db
|
||||
|
|
|
@ -12,7 +12,7 @@ module.exports = {
|
|||
production: {
|
||||
client: 'sqlite3',
|
||||
connection: {
|
||||
filename: './db.sqlite3'
|
||||
filename: './db/db.sqlite3'
|
||||
},
|
||||
migrations: {
|
||||
tableName: 'knex_migrations'
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "@odit/shortener-backend",
|
||||
"version": "0.1.1",
|
||||
"version": "0.1.2",
|
||||
"main": "index.js",
|
||||
"license": "MIT",
|
||||
"private": false,
|
||||
|
|
|
@ -221,7 +221,7 @@ fastify.after(() => {
|
|||
});
|
||||
|
||||
//Get url api route
|
||||
fastify.delete('/api/:shortcode', async (req, res) => {
|
||||
fastify.delete('/api/:shortcode', { onRequest: fastify.basicAuth }, async (req, res) => {
|
||||
const shortcode = req.params.shortcode;
|
||||
|
||||
//This should never happen but better safe than 500
|
||||
|
@ -237,6 +237,23 @@ fastify.after(() => {
|
|||
return true;
|
||||
});
|
||||
|
||||
//Get all urls api route
|
||||
fastify.get('/api', { onRequest: fastify.basicAuth }, async (req, res) => {
|
||||
urls = await knex.select('target', 'shortcode')
|
||||
.from('urls');
|
||||
|
||||
for (let url of urls) {
|
||||
url.url = `${config.getBaseUrl()}/${url.shortcode}`
|
||||
if(req.query.showVisits){
|
||||
url.visits = (await knex.select('timestamp')
|
||||
.from('visits')
|
||||
.where('shortcode', '=', url.shortcode)).length;
|
||||
}
|
||||
}
|
||||
|
||||
return urls;
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
@ -298,13 +315,6 @@ async function validate(username, password, req, reply) {
|
|||
|
||||
// Run the server!
|
||||
const start = async () => {
|
||||
try {
|
||||
await knex.migrate.latest()
|
||||
} catch (err) {
|
||||
fastify.log.error(err)
|
||||
process.exit(1)
|
||||
}
|
||||
|
||||
try {
|
||||
await fastify.listen(3000, '0.0.0.0')
|
||||
} catch (err) {
|
||||
|
|
Loading…
Reference in New Issue