Disco DeDisco
510874b87c
created CD pipeline to complement the existing gitea/woodpecker CI pipeline: build, push to registry, deploy to staging on main
ci/woodpecker/push/woodpecker Pipeline failed
2026-02-13 15:27:59 -05:00
Disco DeDisco
e02385118f
intentially broke functional_tests.test_login to ensure screendumps functionality works on test runner failure in pipeline
ci/woodpecker/push/woodpecker Pipeline was successful
ci/woodpecker/manual/woodpecker Pipeline was successful
2026-02-11 15:29:02 -05:00
Disco DeDisco
71b35242eb
intentially broke functional_tests.test_login to ensure screendumps functionality works on test runner failure in pipeline
ci/woodpecker/push/woodpecker Pipeline failed
2026-02-11 15:20:25 -05:00
Disco DeDisco
bcadb28017
functional_tests.base updated w. many helper functions to save screendumps on server after test failures; woodpecker pipeline updated accordingly
ci/woodpecker/push/woodpecker Pipeline was successful
2026-02-11 15:12:04 -05:00
Disco DeDisco
7f61dbd205
inadvertently committed Jasmine while most of Jasmine was ignored under .gitignore
ci/woodpecker/push/woodpecker Pipeline was successful
2026-02-11 14:50:32 -05:00
Disco DeDisco
5d0a1401d8
created new dir for STATICFILES_DIRS in core.settings; all Jasmine test files transferred to new dir src/static_src/; new FT test_jasmine executes Jasmine test runner as part of CI pipeline & base FT has dobules MAX_WAIT to 10s; some cleanup of unused imports in text_simple_list_creation
ci/woodpecker/push/woodpecker Pipeline failed
2026-02-11 14:42:38 -05:00
Disco DeDisco
a98a0fcd53
added Jasmine test suite from inside src/static dir to git repo
2026-02-11 13:43:59 -05:00
Disco DeDisco
d1c715ab0c
.woodpecker.yaml FT step now covers collectstatic
ci/woodpecker/push/woodpecker Pipeline was successful
2026-02-11 13:26:55 -05:00
Disco DeDisco
0222aa9ea2
.woodpecker.yaml pipeline updated with first-push FT testing
ci/woodpecker/push/woodpecker Pipeline was successful
2026-02-11 12:54:49 -05:00
Disco DeDisco
5ff0e4ec10
commented out second step of .woodpecker.yaml to confirm working test pipeline
ci/woodpecker/push/woodpecker Pipeline was successful
2026-02-10 22:44:10 -05:00
Disco DeDisco
b94f1f48aa
Dockerfile.ci & debug-ci now build working container for CI test image
2026-02-10 22:42:45 -05:00
Disco DeDisco
9fa428c63a
added cssselect to requirements.txt to accompany lxml library from previous commit
ci/woodpecker/push/woodpecker Pipeline was successful
2026-02-10 21:45:49 -05:00
Disco DeDisco
5a633dccee
apps.lyric.views and .tests.test_views updated for better Mailgun API post mocking; UTs passing locally
ci/woodpecker/push/woodpecker Pipeline failed
2026-02-10 21:42:15 -05:00
Disco DeDisco
fec1cfcb30
Gitea repo init; Woodpecker pipeline init; much CI/CD structure outlined in ./infra, incl. docker-compose.yaml, cicd-playbook.yaml, new cicd vault, & config files for gitea, woodpecker & ansible
ci/woodpecker/push/woodpecker Pipeline failed
2026-02-10 21:16:00 -05:00
Disco DeDisco
4e1feddb45
new name @property in List model, replete w. proper testing in tests.test_models
2026-02-08 22:50:03 -05:00
Disco DeDisco
94a161fe09
List objects now container owner values, saved upon creation, linked to user fk; apps.dashboard.views updated accordingly; 36 UTs passing (2 new)
2026-02-08 22:33:15 -05:00
Disco DeDisco
6c0e9bb6ec
new_list() FBV tries to assign List owner, but List() model has no such attr
2026-02-08 22:23:43 -05:00
Disco DeDisco
c176fe6cb3
new UT ensures correct list ownership from apps.dashboard.views
2026-02-08 22:18:41 -05:00
Disco DeDisco
fad8657c97
placeholder view & code for my_lists.html implemented
2026-02-08 21:52:04 -05:00
Disco DeDisco
306b4c8e5e
new template _partials for apps.dashboard, incl. _form.html & _scripts.html; respective form, table & content code offloaded from base.html, home.html & list.html; functional_tests.test_my_list TODO resumed (only FT not currently passing, but this is as expected)
2026-02-08 21:43:58 -05:00
Disco DeDisco
8190317c21
nginx compatibility added to serve static files on server; whitenoise installed to catch static file serving in local docker container, also added to core.settings middleware; console logs & print statements removed from dashboard.js & functional_tests.container_commands; ansible playbook and nginx config file support nginx w.in deployment workflow
2026-02-08 17:55:09 -05:00
Disco DeDisco
07a76cb32d
added new template apps/dashboard/my_lists.html; all FTs passing green locally, tho half og .test_my_lists TODO'd out; test_login uses mock-patch architecture to avoid Mailgun and DigitalOcean magic login link testing restraints
2026-02-07 22:47:04 -05:00
Disco DeDisco
0c413a9cc2
pre–db-reset commit; attempting to update User model w. uuid pk enumeration
2026-02-07 20:15:27 -05:00
Disco DeDisco
58b526f434
add_list_item() helper added to functional_tests.base; further propagated into .test_layout_and_styling, .test_list_item_validation, .test_my_lists & .test_simple_list_creation; all FTs passing locally (tho js-dependent FT still require nginx to serve scripts properly in docker or on server)
2026-02-07 19:44:47 -05:00
Disco DeDisco
10ba5b84e4
after many diversions and forlorn pivot from copilot to claude, new infra/ structure contains group_vars and ansible vaults; requests added to dev and prod dependencies; apps.lyric.views and core
...
.settings both abandon django's send_mail(); instead incorporate requests to target Mailgun's HTTP API (DigitalOcean's SMTP blocker thwarted previous magic login link email attempts, but this issue has been resol
ved with this commit)
2026-02-07 18:58:17 -05:00
Disco DeDisco
449b40e12e
new functional_tests.container_commands file discerns local from server containers; .base calls now calls reset_database() therefrom; .test_my_lists also discerns test server location for different session keys; functional_tests restored as app in core.settings
2026-02-03 22:14:55 -05:00
Disco DeDisco
55bb589f61
added functional_tests to installed apps in core.settings (but only when debug is true); created management dir to contain new django cmds & listed in .dockerignore; created management.create_session cmd; recreated container.db.sqlite3; tweaked test_server setup in functional_tests.base; added test_server failsafe to magic link login testing in .test_login
2026-02-03 14:54:37 -05:00
Disco DeDisco
3fdd07e003
wrapped most helper functions in functional_tests.base in the new @wait decorator, including wait_for() itself; all UTs & FTs passing
2026-02-01 20:38:26 -05:00
Disco DeDisco
2db1c0e3fc
temp. favicon 204 silencer added to core.urls; functional_tests.test_my_lists now tests authenticity of login compared to queried list
2026-02-01 20:18:42 -05:00
Disco DeDisco
cf33f0ccd4
created new FT file at functional_tests.test_my_lists, where the first test model focuses on the integrity of cookie sessions; much of FT login/logout logic offloaded to helper functions in .base;logout django templating added to base.html
2026-02-01 20:06:01 -05:00
Disco DeDisco
36f4182a4f
core/base.html & settings.py updated for email-based login & logout
2026-02-01 16:19:07 -05:00
Disco DeDisco
d236ab9d69
apps.lyric.views updated with simpler FBV & test functionality for user login & authentication (some mocking employed); FT in test_simple_list_creation updated for new base.html content from several commits previous, now only FT not passing (to be expected) is under test_login
2026-01-31 15:16:34 -05:00
Disco DeDisco
9c102ac0f5
updated apps.lyric.views for simpler login authentication and error messaging; .tests.test_views have new test method to assert either authentication condition has properly occurred
2026-01-30 21:51:06 -05:00
Disco DeDisco
ae63861adb
migrations run for lyric models; authentication & views & their tests now account more fully for uuid over email as pk
2026-01-30 21:33:30 -05:00
Disco DeDisco
f002cc5c84
auth backend defined in core.settings
2026-01-30 19:35:45 -05:00
Disco DeDisco
b12f56c7ca
functional auth backend; new get_user() method in authentication model & new accompanying test methods
2026-01-30 19:26:02 -05:00
Disco DeDisco
41f4ff1725
new apps.lyric.authenticate model PasswordlessAuthenticationBackend and authenticate() function help determine Token authenticity, login to existing accounts, or create new ones; associated .tests.test_authentication class asserts this functionality; apps.lyric.models & .tests.models now handles token uid instead of id, completing the transition away from email-as-pk
2026-01-30 19:10:17 -05:00
Disco DeDisco
2d61506a6d
apps.lyric.views now generates a token associated w. the user-entered email & includes a link w. the token to login to the testserver; .tests.test_views asserts the association and the inclusion
2026-01-30 17:52:44 -05:00
Disco DeDisco
bab0b045b0
new apps.lyric.views login FBV; new login path in .urls; new UT in .tests.test_views to assert the FBV's redirect to '/'
2026-01-30 17:36:48 -05:00
Disco DeDisco
93eb497dec
mocking added thruout apps.lyric.tests.test_views, where UTs mock message sending; status message loop added to base.html below navbar; hardcoded assert and model/view values aligned across lyric app, UTs & FTs
2026-01-30 17:23:07 -05:00
Disco DeDisco
4b1906b1ee
new apps.lyric.urls, .tests.test_views files to test & execute mock email sending; apps.lyric.models, .tests.test_models now test & execute unique token autogen to integrate w. magic link login using only email; core.settings updated w. new urlpatterns to accommodate
2026-01-30 16:21:32 -05:00
Disco DeDisco
d724e03c3c
custom user model that maintains id as pk
2026-01-30 15:04:47 -05:00
Disco DeDisco
a734901b80
started lyric app (in earnest this time); added bootstrap-classed navbar w. login form to base.html; tweaked apps.dashboard.tests.test_views to accomodate multiple forms on same page
2026-01-29 15:21:54 -05:00
Disco DeDisco
3ebf4db974
removed spiked lyric app; pursuring spiked code via TDD, starting w. functional_tests.test_login
2026-01-29 14:28:19 -05:00
Disco DeDisco
512e5e6cd9
prod commit with small staticfile handling changes to container.db.sqlite3, the Dockerfile & requirements.dev.txt
2026-01-27 23:32:16 -05:00
Disco DeDisco
adf0ca3d25
js complete to hide error msg on changed user input
2026-01-27 17:18:59 -05:00
Disco DeDisco
e699c18321
applied initalize() to templates/core/base.html for DRYer script tags
2026-01-27 17:05:47 -05:00
Disco DeDisco
6546bbba84
refactored for DRY handling of inputSelector (#id_text) & errorSelector (.invalid-feedback)
2026-01-27 16:56:05 -05:00
Disco DeDisco
7f2267f5e3
initialize() restored to a const (was a function)
2026-01-27 16:39:48 -05:00
Disco DeDisco
93aa3534e5
initialize() functionality restored to dashboard.js, after a missing id-selector was found missing
2026-01-27 16:38:47 -05:00