Merge branch 'master' of gitlab.com:shockrah/clippable
This commit is contained in:
commit
71407b9202
@ -1,28 +1,30 @@
|
||||
image: rustlang/rust:nightly
|
||||
stages:
|
||||
- deploy
|
||||
- pages
|
||||
- build
|
||||
|
||||
# Builds out the intended zip package
|
||||
#package:
|
||||
# stage: build
|
||||
# script:
|
||||
# - rustup default nightly
|
||||
# - mkdir -p build
|
||||
# - cp api/templates/ api/static/ build -r
|
||||
# - cargo build --release
|
||||
# - cp target/release/api build/server
|
||||
# - cp ./scripts/generate-thumbnail.sh build/
|
||||
# - cp readme.md build/
|
||||
# - sh ./scripts/default-rocket-toml.sh
|
||||
# artifacts:
|
||||
# paths:
|
||||
# - build/
|
||||
package:
|
||||
stage: build
|
||||
script:
|
||||
- rustup default nightly-2021-09-18
|
||||
- mkdir -p build
|
||||
- cp api/templates/ api/static/ build -r
|
||||
- cargo --version
|
||||
- cargo build --release
|
||||
- cp target/release/api build/server
|
||||
- cp ./scripts/generate-thumbnail.sh build/
|
||||
- cp readme.md build/
|
||||
- sh ./scripts/default-rocket-toml.sh
|
||||
artifacts:
|
||||
paths:
|
||||
- build/
|
||||
|
||||
|
||||
|
||||
pages:
|
||||
image: shockrah/website:latest
|
||||
stage: deploy
|
||||
stage: pages
|
||||
before_script:
|
||||
- git submodule init
|
||||
- git submodule update
|
||||
|
8
Dockerfile
Normal file
8
Dockerfile
Normal file
@ -0,0 +1,8 @@
|
||||
FROM debian:sid-slim
|
||||
|
||||
# Default daniel dirs
|
||||
RUN mkdir -p /media/clips /media/thumbnails
|
||||
COPY build/ /app
|
||||
WORKDIR /app
|
||||
ENTRYPOINT [ "/app/server" ]
|
||||
|
@ -1,3 +0,0 @@
|
||||
Signature: 8a477f597d28d172789f06886806bc55
|
||||
# This file is a cache directory tag created by cargo.
|
||||
# For information about cache directory tags see https://bford.info/cachedir/
|
@ -12,8 +12,34 @@ You can post whatever you want because its your content, your site, your rules.
|
||||
|
||||
# How does it work?
|
||||
|
||||
Clips are organized into categories(folders)....
|
||||
Well clips that you upload to your server are organized into categories and
|
||||
served from there. Categories can have thumbnails too so they look distinct
|
||||
but that's up to you to setup.
|
||||
|
||||
That's it.
|
||||
# Can I make a script to get videos?
|
||||
|
||||
Categories can have thumbnails too so they look distinct but that's up to you.
|
||||
Sure the public API is actually really simple:
|
||||
|
||||
These are basically all the routes you'll need
|
||||
|
||||
* GET `/api/categories/list`
|
||||
|
||||
Lists out the categories available
|
||||
|
||||
* GET `/api/category/<category-name>`
|
||||
|
||||
Lists out the videos for that given category
|
||||
|
||||
* GET `/video/<category>/<file>`
|
||||
|
||||
Fetches the video file itself named by `file`
|
||||
|
||||
|
||||
# How easy is it to upload videos?
|
||||
|
||||
Right now you just need to drop a video file into a sub-folder of your server's
|
||||
videos directory. So if you had `/media/videos` then you would put a video into
|
||||
a folder like `/media/videos/cool-clips/` or whatever else it's named.
|
||||
|
||||
Currently I'm working on making a simple clip-uploading tool that would also take
|
||||
care of generating the appropriate thumbnails for you.
|
||||
|
17
readme.md
17
readme.md
@ -2,10 +2,18 @@
|
||||
|
||||
A small self hostable alternative to streamable. Built with Rocket.rs
|
||||
|
||||
## Status
|
||||
## Testing
|
||||
|
||||
Right now the public API is being built so that as long as there videos to serve
|
||||
the application should serve
|
||||
A docker container is provided:
|
||||
|
||||
* `docker pull registry.gitlab.com/shockrah/clippable:latest`
|
||||
|
||||
Below is the suggested way test things out
|
||||
|
||||
* `docker run --rm -p 8482:8482 -it -v /path/to/clips:/media/clips -v /path/to/thumbnails:/media/thumbnails`
|
||||
|
||||
**NOTE**: Without proper thumbnails you get the "404" gif everywhere but the
|
||||
videos will still be there.
|
||||
|
||||
## Admin Setup/Configuration
|
||||
|
||||
@ -28,6 +36,3 @@ must be ran in order to ensure that output directory is present and compilation
|
||||
succeeds. There are no dependencies and is only written in typescript to
|
||||
enforce some level of consistency among contributor code.
|
||||
|
||||
## Roadmap
|
||||
|
||||
_Check the /roadmap.md_
|
@ -8,7 +8,7 @@ port = 8482
|
||||
keep_alive = 5
|
||||
read_timeout = 5
|
||||
write_timeout = 5
|
||||
log = "critical"
|
||||
log_level = "critical"
|
||||
limits = { forms = 4096 }
|
||||
|
||||
# Must be type <integer> (below is not valid toml syntax)
|
||||
|
Loading…
Reference in New Issue
Block a user