* feat: basic blobstore infrastructure for dev
* refactor: (broken) attempt to put minio console behind nginx
* feat: initialize blobstore with boto3
* fix: abandon attempt to proxy minio. Use docker compose instead.
* feat: beginning of blob writes
* feat: storage utilities
* feat: test buckets
* chore: black
* chore: remove unused import
* chore: avoid f string when not needed
* fix: inform all settings files about blobstores
* fix: declare types for some settings
* ci: point to new target base
* ci: adjust test workflow
* fix: give the tests debug environment a blobstore
* fix: "better" name declarations
* ci: use devblobstore container
* chore: identify places to write to blobstorage
* chore: remove unreachable code
* feat: store materials
* feat: store statements
* feat: store status changes
* feat: store liaison attachments
* feat: store agendas provided with Interim session requests
* chore: capture TODOs
* feat: store polls and chatlogs
* chore: remove unneeded TODO
* feat: store drafts on submit and post
* fix: handle storage during doc expiration and resurrection
* fix: mirror an unlink
* chore: add/refine TODOs
* feat: store slide submissions
* fix: structure slide test correctly
* fix: correct sense of existence check
* feat: store some indexes
* feat: BlobShadowFileSystemStorage
* feat: shadow floorplans / host logos to the blob
* chore: remove unused import
* feat: strip path from blob shadow names
* feat: shadow photos / thumbs
* refactor: combine photo and photothumb blob kinds
The photos / thumbs were already dropped in the same
directory, so let's not add a distinction at this point.
* style: whitespace
* refactor: use kwargs consistently
* chore: migrations
* refactor: better deconstruct(); rebuild migrations
* fix: use new class in mack patch
* chore: add TODO
* feat: store group index documents
* chore: identify more TODO
* feat: store reviews
* fix: repair merge
* chore: remove unnecessary TODO
* feat: StoredObject metadata
* fix: deburr some debugging code
* fix: only set the deleted timestamp once
* chore: correct typo
* fix: get_or_create vs get and test
* fix: avoid the questionable is_seekable helper
* chore: capture future design consideration
* chore: blob store cfg for k8s
* chore: black
* chore: copyright
* ci: bucket name prefix option + run Black
Adds/uses DATATRACKER_BLOB_STORE_BUCKET_PREFIX option. Other changes
are just Black styling.
* ci: fix typo in bucket name expression
* chore: parameters in app-configure-blobstore
Allows use with other blob stores.
* ci: remove verify=False option
* fix: don't return value from __init__
* feat: option to log timing of S3Storage calls
* chore: units
* fix: deleted->null when storing a file
* style: Black
* feat: log as JSON; refactor to share code; handle exceptions
* ci: add ietf_log_blob_timing option for k8s
* test: --no-manage-blobstore option for running tests
* test: use blob store settings from env, if set
* test: actually set a couple more storage opts
* feat: offswitch (#8541)
* feat: offswitch
* fix: apply ENABLE_BLOBSTORAGE to BlobShadowFileSystemStorage behavior
* chore: log timing of blob reads
* chore: import Config from botocore.config
* chore(deps): import boto3-stubs / botocore
botocore is implicitly imported, but make it explicit
since we refer to it directly
* chore: drop type annotation that mypy loudly ignores
* refactor: add storage methods via mixin
Shares code between Document and DocHistory without
putting it in the base DocumentInfo class, which
lacks the name field. Also makes mypy happy.
* feat: add timeout / retry limit to boto client
* ci: let k8s config the timeouts via env
* chore: repair merge resolution typo
* chore: tweak settings imports
* chore: simplify k8s/settings_local.py imports
---------
Co-authored-by: Jennifer Richards <jennifer@staff.ietf.org>
* doc: make a short description of starting the dev environment easier to find.
* doc: more tl;dr tweaks
* doc: still more tl;dr tweaks
* chore: silly cleanup
* chore: more sillyness
* chore: hoopjumping around semicolons
* chore: _what_ semicolon
* chore: de-red-on-blue a parenthesis
* docs: Update README.md
---------
Co-authored-by: Nicolas Giard <github@ngpixel.com>
* test: remove cypress + migrate existing tests to playwright + update workflows
* ci: remove leftover condition in ci-run-tests workflow
* ci: add missing matrix to tests-playwright-legacy
* ci: run playwright legacy as user 1001
* ci: set home var for firefox
* ci: allow firefox to run as root for tests
* chore: bring docker dev init script up to date with bs5 branch (#3611)
* ci: only run codeql on schedule
* feat: shorten long agenda filter button labels (#3602)
Sessions with long names lead to poor rendering of the agenda filter buttons
on the 'customize the agenda view' page. This truncates those labels at 3 words.
* docs: Remove stale and incomplete information from the README (#3612)
* docs: Suggest cloning a fork rather than ietf-tools repo (#3614)
* docs: update README
* chore: add issue templates
* chore: update issue templates config
* chore: remove duplicate security issue link
* docs: point feature requests to discussions
* chore: add bug report form
* chore: remove bug report issue template
* chore: fix bug report form
* fix: point the api index page into Github instead of trac/svn
* chore: remove os + version + log fields from bug report form
* fix: point to GitHub for bug reports (#3625)
* fix: point to GitHub for bug reports
* fix: point report bug link to template chooser
* fix: point report bug link to template chooser (2)
Co-authored-by: Nicolas Giard <github@ngpixel.com>
* fix: remove stale explanation of status reports (#3628)
* fix: adjust about page to reflect move to GitHub. Normalize information level on page. (#3629)
* fix: remove anchor tag with empty href (#3630)
* fix: use same github issue URL on 500 error page as elsewhere (#3631)
* chore: update report-a-bug.yml form
* ci: fix __init__.py version quotes
* chore: bring docker-compose to root level (#3642) (#3643)
Authored-by: Nicolas Giard <github@ngpixel.com>
Co-authored-by: Nicolas Giard <github@ngpixel.com>
Co-authored-by: Robert Sparks <rjsparks@nostrum.com>
Co-authored-by: Jim Fenton <fenton@bluepopcorn.net>