Compare commits

..

No commits in common. "379b4e24721523507e1da27eaa08e372234c09a9" and "f14a8d1c3977692fb3ffd7618500e545685b3579" have entirely different histories.

8 changed files with 8 additions and 43 deletions

View File

@ -22,17 +22,13 @@
* ✅ Make server take options from file * ✅ Make server take options from file
* ✅ Make server take options from environment * ✅ Make server take options from environment
* ✅ Make server password configurable * ✅ Make server password configurable
* admin/admin auth client side [WIP, broke everything] * admin/admin auth client side
* `faaso login` is not working properly yet with proxy
* CD for binaries and images for at least arm64/x86 * CD for binaries and images for at least arm64/x86
* Multi-container docker logs [faaso logs -f FUNKO] * Multi-container docker logs [faaso logs -f FUNKO]
* ✅ Direct error and above to stderr, others to stdout, * ✅ Direct error and above to stderr, others to stdout,
while keeping logging level configurable while keeping logging level configurable
* ✅ Fix proxy reload / Make it reload on file changes * ✅ Fix proxy reload / Make it reload on file changes
* Implement `faaso help command` * Implement `faaso help command`
* Fix `export examples/hello_crystal` it has a `template/`
* Implement zero-downtime rollout
* Cleanup `tmp/` after use unless `DEBUG` is set
# Things to do but not before release # Things to do but not before release

View File

@ -1 +1 @@
password: adminfoo password: admin

View File

@ -1,8 +0,0 @@
handle_path /faaso/hello/* {
reverse_proxy /* http://faaso-hello-9zth8p:3000 {
health_uri /ping
fail_duration 30s
}
}

View File

@ -1,11 +1,3 @@
# Readme for Hello_crystal # README
This is a funko using the Crystal runtime for [FaaSO](https://git.ralsina.me/ralsina/faaso) This is the readme for people trying to *use* this runtime.
## What is Hello_crystal
Write here what it is
## How to use Hello_crystal
And so on.

View File

@ -1,14 +0,0 @@
name: hello_crystal
version: 0.1.0
targets:
funko:
main: main.cr
dependencies:
kemal:
github: kemalcr/kemal
# development_dependencies:
# webmock:
# github: manastech/webmock.cr

View File

@ -10,7 +10,7 @@ RUN shards build --release
RUN strip bin/* RUN strip bin/*
FROM --platform=${TARGETPLATFORM:-linux/amd64} alpine as ship FROM --platform=${TARGETPLATFORM:-linux/amd64} alpine as ship
RUN apk update && apk upgrade && apk add pcre2 libgcc gc libevent curl {{ ship_packages | join " " }} && apk cache clean RUN apk update && apk upgrade && apk add openssl pcre2 libgcc gc libevent curl {{ ship_packages | join " " }} && apk cache clean
RUN addgroup -S app && adduser app -S -G app RUN addgroup -S app && adduser app -S -G app
WORKDIR /home/app WORKDIR /home/app

View File

@ -127,7 +127,7 @@ module Funko
# Helper to run faaso locally and respond via env # Helper to run faaso locally and respond via env
def run_faaso(args : Array(String), env) : Bool def run_faaso(args : Array(String), env) : Bool
Log.info { "Running faaso [#{args.join(", ")}, -l, 2>&1]" } Log.info { "Running faaso [#{args.join(", ")}, -l]" }
Process.run( Process.run(
command: "faaso", command: "faaso",
args: args + ["-l", "2>&1"], # Always local in the server args: args + ["-l", "2>&1"], # Always local in the server

View File

@ -99,8 +99,7 @@ module Funko
sleep 0.1.seconds sleep 0.1.seconds
} }
else else
# Sort them older to newer, so we stop the oldest containers.select { |container| container.@state == "running" }.sort! { |i, j|
containers.sort! { |i, j|
i.@created <=> j.@created i.@created <=> j.@created
}.each { |container| }.each { |container|
Log.info { "Removing instance" } Log.info { "Removing instance" }