npm update, remove runtime.exs as not using for now
This commit is contained in:
parent
dceef941c7
commit
61796cf985
3 changed files with 14 additions and 97 deletions
16
README.md
16
README.md
|
@ -6,19 +6,19 @@ Written in Elixir & Phoenix LiveView, with Bootstrap v5.
|
||||||
|
|
||||||
## TODO
|
## TODO
|
||||||
|
|
||||||
- [ ] Ability to edit shifts?
|
- [X] ~~*Proper modal to delete shifts?*~~ [2022-08-14]
|
||||||
- [ ] Proper modal to delete shifts?
|
- [ ] Update tests, which are probably all way out of date. But I also don't care that much for this project...
|
||||||
- [ ] Allow all-day items for notes, or require hours even for sick days?
|
|
||||||
- [ ] Implement proper shift/template/assign tests (views etc)
|
|
||||||
|
|
||||||
## Deploying
|
## Deploying
|
||||||
|
|
||||||
|
The below notes are old; I'm using a docker build to deploy this now. Will document when I have time.
|
||||||
|
|
||||||
### New versions
|
### New versions
|
||||||
|
|
||||||
When improvements are made, we can update the deployed version like so:
|
When improvements are made, we can update the deployed version like so:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
cd /opt/shift73k
|
cd ${SHIFT73K_BASE_DIR}
|
||||||
# update from master
|
# update from master
|
||||||
/usr/bin/git pull 73k master
|
/usr/bin/git pull 73k master
|
||||||
# fetch prod deps & compile
|
# fetch prod deps & compile
|
||||||
|
@ -27,10 +27,10 @@ MIX_ENV=prod /usr/bin/mix compile
|
||||||
# perform any migrations
|
# perform any migrations
|
||||||
MIX_ENV=prod /usr/bin/mix ecto.migrate
|
MIX_ENV=prod /usr/bin/mix ecto.migrate
|
||||||
# update node packages via package-lock.json
|
# update node packages via package-lock.json
|
||||||
/usr/bin/npm --prefix /opt/shift73k/assets/ ci
|
/usr/bin/npm --prefix ./assets/ ci
|
||||||
# rebuild static assets:
|
# rebuild static assets:
|
||||||
rm -rf /opt/shift73k/priv/static/*
|
rm -rf ./priv/static/*
|
||||||
/usr/bin/npm --prefix /opt/shift73k/assets/ run deploy
|
/usr/bin/npm --prefix ./assets/ run build
|
||||||
MIX_ENV=prod /usr/bin/mix phx.digest
|
MIX_ENV=prod /usr/bin/mix phx.digest
|
||||||
# rebuild release
|
# rebuild release
|
||||||
MIX_ENV=prod /usr/bin/mix release --overwrite
|
MIX_ENV=prod /usr/bin/mix release --overwrite
|
||||||
|
|
12
assets/package-lock.json
generated
12
assets/package-lock.json
generated
|
@ -57,9 +57,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@types/node": {
|
"node_modules/@types/node": {
|
||||||
"version": "18.7.2",
|
"version": "18.7.3",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.2.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.3.tgz",
|
||||||
"integrity": "sha512-ce7MIiaYWCFv6A83oEultwhBXb22fxwNOQf5DIxWA4WXvDQ7K+L0fbWl/YOfCzlR5B/uFkSnVBhPcOfOECcWvA==",
|
"integrity": "sha512-LJgzOEwWuMTBxHzgBR/fhhBOWrvBjvO+zPteUgbbuQi80rYIZHrk1mNbRUqPZqSLP2H7Rwt1EFLL/tNLD1Xx/w==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/@types/phoenix": {
|
"node_modules/@types/phoenix": {
|
||||||
|
@ -1070,9 +1070,9 @@
|
||||||
"peer": true
|
"peer": true
|
||||||
},
|
},
|
||||||
"@types/node": {
|
"@types/node": {
|
||||||
"version": "18.7.2",
|
"version": "18.7.3",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.2.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.7.3.tgz",
|
||||||
"integrity": "sha512-ce7MIiaYWCFv6A83oEultwhBXb22fxwNOQf5DIxWA4WXvDQ7K+L0fbWl/YOfCzlR5B/uFkSnVBhPcOfOECcWvA==",
|
"integrity": "sha512-LJgzOEwWuMTBxHzgBR/fhhBOWrvBjvO+zPteUgbbuQi80rYIZHrk1mNbRUqPZqSLP2H7Rwt1EFLL/tNLD1Xx/w==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@types/phoenix": {
|
"@types/phoenix": {
|
||||||
|
|
|
@ -1,83 +0,0 @@
|
||||||
import Config
|
|
||||||
|
|
||||||
# config/runtime.exs is executed for all environments, including
|
|
||||||
# during releases. It is executed after compilation and before the
|
|
||||||
# system starts, so it is typically used to load production configuration
|
|
||||||
# and secrets from environment variables or elsewhere. Do not define
|
|
||||||
# any compile-time configuration in here, as it won't be applied.
|
|
||||||
# The block below contains prod specific runtime configuration.
|
|
||||||
|
|
||||||
# ## Using releases
|
|
||||||
#
|
|
||||||
# If you use `mix release`, you need to explicitly enable the server
|
|
||||||
# by passing the PHX_SERVER=true when you start it:
|
|
||||||
#
|
|
||||||
# PHX_SERVER=true bin/shift73k start
|
|
||||||
#
|
|
||||||
# Alternatively, you can use `mix phx.gen.release` to generate a `bin/server`
|
|
||||||
# script that automatically sets the env var above.
|
|
||||||
if System.get_env("PHX_SERVER") do
|
|
||||||
config :shift73k, Shift73kWeb.Endpoint, server: true
|
|
||||||
end
|
|
||||||
|
|
||||||
if config_env() == :prod do
|
|
||||||
database_url =
|
|
||||||
System.get_env("DATABASE_URL") ||
|
|
||||||
raise """
|
|
||||||
environment variable DATABASE_URL is missing.
|
|
||||||
For example: ecto://USER:PASS@HOST/DATABASE
|
|
||||||
"""
|
|
||||||
|
|
||||||
maybe_ipv6 = if System.get_env("ECTO_IPV6"), do: [:inet6], else: []
|
|
||||||
|
|
||||||
config :shift73k, Shift73k.Repo,
|
|
||||||
# ssl: true,
|
|
||||||
url: database_url,
|
|
||||||
pool_size: String.to_integer(System.get_env("POOL_SIZE") || "10"),
|
|
||||||
socket_options: maybe_ipv6
|
|
||||||
|
|
||||||
# The secret key base is used to sign/encrypt cookies and other secrets.
|
|
||||||
# A default value is used in config/dev.exs and config/test.exs but you
|
|
||||||
# want to use a different value for prod and you most likely don't want
|
|
||||||
# to check this value into version control, so we use an environment
|
|
||||||
# variable instead.
|
|
||||||
secret_key_base =
|
|
||||||
System.get_env("SECRET_KEY_BASE") ||
|
|
||||||
raise """
|
|
||||||
environment variable SECRET_KEY_BASE is missing.
|
|
||||||
You can generate one by calling: mix phx.gen.secret
|
|
||||||
"""
|
|
||||||
|
|
||||||
host = System.get_env("PHX_HOST") || "example.com"
|
|
||||||
port = String.to_integer(System.get_env("PORT") || "4000")
|
|
||||||
|
|
||||||
config :shift73k, Shift73kWeb.Endpoint,
|
|
||||||
url: [host: host, port: 443, scheme: "https"],
|
|
||||||
http: [
|
|
||||||
# Enable IPv6 and bind on all interfaces.
|
|
||||||
# Set it to {0, 0, 0, 0, 0, 0, 0, 1} for local network only access.
|
|
||||||
# See the documentation on https://hexdocs.pm/plug_cowboy/Plug.Cowboy.html
|
|
||||||
# for details about using IPv6 vs IPv4 and loopback vs public addresses.
|
|
||||||
ip: {0, 0, 0, 0, 0, 0, 0, 0},
|
|
||||||
port: port
|
|
||||||
],
|
|
||||||
secret_key_base: secret_key_base
|
|
||||||
|
|
||||||
# ## Configuring the mailer
|
|
||||||
#
|
|
||||||
# In production you need to configure the mailer to use a different adapter.
|
|
||||||
# Also, you may need to configure the Swoosh API client of your choice if you
|
|
||||||
# are not using SMTP. Here is an example of the configuration:
|
|
||||||
#
|
|
||||||
# config :shift73k, Shift73k.Mailer,
|
|
||||||
# adapter: Swoosh.Adapters.Mailgun,
|
|
||||||
# api_key: System.get_env("MAILGUN_API_KEY"),
|
|
||||||
# domain: System.get_env("MAILGUN_DOMAIN")
|
|
||||||
#
|
|
||||||
# For this example you need include a HTTP client required by Swoosh API client.
|
|
||||||
# Swoosh supports Hackney and Finch out of the box:
|
|
||||||
#
|
|
||||||
# config :swoosh, :api_client, Swoosh.ApiClient.Hackney
|
|
||||||
#
|
|
||||||
# See https://hexdocs.pm/swoosh/Swoosh.html#module-installation for details.
|
|
||||||
end
|
|
Loading…
Reference in a new issue