Commit Graph

76 Commits

Author SHA1 Message Date
082b946956 client: docker-finance.d: add plugins support 2024-08-12 18:36:27 -07:00
682fbe2f03 client: completion: add plugins support 2024-08-12 18:36:27 -07:00
52c958b927 client: lib_docker: refactor for library support (plugins)
- Exports globals to caller for "library" support (export to `plugins`, etc.)

- Removes enforcement of initializing "constructor" with 2nd arg (`command`)
  * Arg not needed since external/internal checks already in place
  * Context specific: if needed, caller should always check if set
  * Removal needed so library can be used within a library context

- `basename` fix to allow for bash completion
2024-08-12 18:36:26 -07:00
9c181b75a1 client: add plugins feature 2024-08-12 18:36:26 -07:00
720eec8a14 client: add lib_plugins
- Allows client-side execution of repo/custom client plugins
- A client-side equivalent of container's lib_plugins
2024-08-12 18:36:26 -07:00
bbb5d7c238 client: Dockerfiles: add plugins env to docker-compose 2024-08-12 18:36:26 -07:00
8a6ea479e2 client: plugins: docker: add example 2024-08-12 18:36:26 -07:00
01737d37bf client: lib_gen: new custom plugin layout, update example plugin
- Generates new custom plugin directory layout upon `gen`
  * Allows for drop-in client-side/container-side custom plugins

- Moved container plugin example into container's plugins
  * Plugin is no longer generated upon `gen` (it's available in-repo)

- Updates plugin example
    - Provides requisite lib_finance initialization
    - Refactored, added more checks
    - Expand example case
    - Linter fixes
2024-08-12 18:30:45 -07:00
923a9eee24 client: lib_gen: generate 'times'
- Sets a location for:
  * timew database
  * Anything time-related (among all profiles)
2024-08-09 00:01:48 -07:00
6da9b71030 client: manifest: add timew package 2024-08-09 00:01:46 -07:00
e50f4b62cb client: Dockerfiles: add timew package 2024-08-09 00:01:40 -07:00
eaec539c22 client: lib_gen: generate plugins
- Sets a location for plugins
  * Allows for end-user custom plugins
- Provides default example plugin
2024-08-08 16:00:03 -07:00
be6e366d80 client: lib_gen: fix missing copy of custom Dockerfile
Existing file was backed up but repo default was not copied over.
2024-08-07 21:33:21 -07:00
b30c00f3b6 client: lib_gen: refactor flow generation
- Checks for/creates established layout
- Refactor subprofile function names
- Clarifies questions/documentation
2024-08-07 21:33:21 -07:00
b034674ff2 client: superscript: remove share.d from $PATH
Executables in share.d should be explicitly called, for better security.
2024-08-07 21:13:36 -07:00
546f5b528a client: docker.bash: fix usage typo 2024-08-07 19:52:26 -07:00
0db5566d9f client: add dfi alias
- `dfi` is now primary unified command (saves fingers)
  * `docker-finance` is still available, as this is only an addition
- Also fixes missing line continuation during install (#104)
2024-08-06 02:15:38 -07:00
90f96399f0 repo/client: move shell env prep to install.bash 2024-08-06 00:10:58 -07:00
646ca3af85 Dockerfiles: source container bash completion 2024-08-05 16:22:22 -07:00
7f86b6a250 client: add preliminary bash completion 2024-08-05 16:22:21 -07:00
7e1bd8f5e2 client: bump version to v1.0.0-beta.2 2024-07-30 19:16:10 -07:00
6b5c8af925 client: docker.bash: fix help usage (dev-tools alias) 2024-07-27 22:10:35 -07:00
e9bd7f322f client: lib_docker: add USER/WORKDIR to finalize Dockerfile
Guarantees that any additions to custom Dockerfile (or a missing custom)
will not prevent bringing `up` a container into the correct environment.
2024-07-27 16:32:42 -07:00
c49e0ad795 client: lib_gen: fix missing directory slash 2024-07-27 16:26:17 -07:00
cbe5a107ee client: lib_gen: fix custom Dockerfile path
Fixup to #90.
2024-07-19 23:24:13 -07:00
c34fd15a51 client: lib_gen: fix environment reader/resetter
- Fixes default env generation if current env exists
    * was not unsetting all previously exported env
- Adds debug output
2024-07-19 17:52:38 -07:00
af533460ec client: lib_gen: rewrite/fix global env gen
- Fixes resetting of globals after sourcing custom env file (location)
- Reorganizes flow logic
- Related refactoring
- Clarifies comments
- Adds debug output
2024-07-19 16:48:40 -07:00
7118a39f6d client: optimize/refactor repository path
- Reduces all calls into a single line
- Redefines path as root repository path
2024-07-18 22:57:31 -07:00
cd9681566b client: docker.bash: usage update/refactor
- Uses variable delimiters
- Adds current impl arguments
- Shortens 'dev-tools' example
2024-07-18 22:57:30 -07:00
612f9e5499 container: root: add internal throw/exception handler 2024-07-17 19:45:06 -07:00
f0561d1ebe client: lib_gen: superscript: append subprofile before generating
- Append new subprofile before potentially generating new file
- Simplifies backup/writing process
- Related refactoring
2024-07-16 17:54:25 -07:00
37fcba1586 client: lib_docker: build: use 'experimental' path 2024-07-16 17:44:17 -07:00
9975d3471c client: remove ghc package requirement
Will be managed by `stack` via respective source builds.
2024-07-16 17:44:16 -07:00
b7900f1eef client: reorg/factoring for 'experimental' builds
- Dockerfiles: separation of concerns for build types
- Dockerfiles: pull from respective hledger-based branches/tags
- Dockerfiles: move hledger-based test building into experimental
- docker-finance.yaml: add commented package 'unuran' (experimental)
2024-07-16 17:44:16 -07:00
e58bc578cd client: Dockerfiles: ubuntu: fix botan dependency
- The library is needed, not the utility binary
- Fixes `root` loading errors about missing headers
2024-07-13 19:06:20 -07:00
e11a142a86 client: lib_docker: version: refactor, print image name 2024-07-13 03:08:59 -07:00
bc7ebff2a1 client: lib_docker: factor env gen into lib_gen
- Related environment refactoring
2024-07-13 03:08:59 -07:00
4d3eef6067 client: new internal client versioning system
- Version is now determined on-the-fly from manifest file
- Internal versioning no longer depends on environment file
2024-07-13 03:01:06 -07:00
c68463bd2b client: fetch.yaml.in: remove redundant version
This element is found within the actual schema.
2024-07-13 00:46:57 -07:00
7f199f1615 client: lib_gen: ignore comments in env file 2024-07-13 00:46:57 -07:00
b9583a70df client: update manifest to current version 2024-07-13 00:46:56 -07:00
b00f4640df client: lib_docker: add build platform to version type=short 2024-07-12 21:18:58 -07:00
85a9cd8018 client: lib_docker: add 'type' arg to version
- Add `version` types (client | container | short | all)
- Related refactoring
2024-07-12 21:18:58 -07:00
f2df54d3cc client: Dockerfiles: resolve apt CLI warning 2024-07-11 16:48:58 -07:00
48a7b7f798 client: lib_docker: add 'experimental' build type 2024-07-09 22:56:04 -07:00
c74a76bd0b client: Dockerfiles: add hledger source build 2024-07-09 22:56:03 -07:00
4316172e4c container: subprofile.bash.in: add TODO re: --conf 2024-07-08 18:14:42 -07:00
c2ac298f67 client: lib_gen: add hledger conf support 2024-07-08 18:13:34 -07:00
bbbecff7f1 client: docker-finance.d: add hledger.conf.in 2024-07-08 18:13:34 -07:00
f43f77d28b client: lib_gen: return success on client generation
Selecting [nN] to client generation would skip optional container generation.
2024-07-03 19:22:59 -07:00