* [layerindex-web][PATCH 000/126] Docker setup / misc fixes (cover letter only)
@ 2019-07-17 23:37 Paul Eggleton
0 siblings, 0 replies; only message in thread
From: Paul Eggleton @ 2019-07-17 23:37 UTC (permalink / raw)
To: yocto
The Clear Linux* Dissector [1] is a special-purpose fork of the OE Layer
Index codebase. During development a number of general-purpose fixes have
been made, so I am now sending a slightly reworked set of these back to be
merged into the layer index. Highlights:
* Enhanced docker/docker-compose setup with script for one-command
installation - this is now the preferred method of installation for
uses other than development, so the README documentation has been
updated accordingly.
* User-selectable security questions for password resets
* Fixes for spec file importing
* Various minor security fixes
[1] https://github.com/intel/clear-linux-dissector-web
The following changes since commit dba1fbe5d1c5d8714d7ca3ca86c42972ebde128e:
RRS: add missing migration (2019-05-28 09:57:58 +1200)
are available in the Git repository at:
git://git.yoctoproject.org/layerindex-web paule/dissector-backports
http://git.yoctoproject.org/cgit.cgi/layerindex-web/log/?h=paule/dissector-backports
Amber Elliot (6):
docker: add setup script
admin.py: Add custom SiteAdmin model.
Upgrade django-registration to version 3.0.
Add user security questions
layerindex/urls.py: improve formatting
requirements.txt: Require secure version of Django.
Paul Eggleton (119):
Add ability to hide branches
Split out recipe dependency handling to its own function
docker: Add docker-compose file
update_classic_status: recognise pythonhosted.org as python
update_classic_status: set category for KDE packages
update_classic_status: categorise perl packages
import_otherdistro: add description option
import_otherdistro: improve display of deleted items
dockersetup: formatting fixes
dockersetup: add some error checking to the setup script
dockersetup: tweak portmapping option and display port
docker/nginx*.conf: fix up indentation
docker: use quoted values
dockersetup: add HTTPS support and use by default
dockersetup: Show intro message
dockersetup: add letsencrypt support
nginx: set some limits for DDOS protection
docker: set mariadb wait_timeout to upstream default
dockerignore: add docker files and tests
docker: enable user/password for RabbitMQ server
dockersetup: move HTTPS code to its own function
dockersetup: support update/reinstall mode
dockersetup: fix auto-generated passwords
dockersetup: warn if http proxy specified without https
dockersetup: use separate db account with lower privileges
dockersetup: use with open in readfile/writefile
.gitignore: add some more files/dirs
dockersetup: support importing gzip compressed database dumps
docker: pass through options for migrate script
docker: restart services automatically unless stopped
Update TableSorter to latest version of active fork
Disable caching on auth views
docker: enable SECURE_BROWSER_XSS_FILTER
Use shell=False where possible with utils.runcmd()
dockersetup: import database dump before running migrations
dockersetup: move superuser account creation to the end
dockersetup: set site info and email host
Rework README documents
import_layers: fix URL construction
Add a script to create initial db dump
dockersetup: add option to skip database migrations
dockersetup: enable error report emails
Disable autocomplete on sensitive fields
docker: Increase nginx max upload size
docker: increase gunicorn worker timeout to handle large images
ClassicRecipeDetailView does not need a form
Add ability to disposition comparison patches
Add access controls to PatchDispositionAdmin
import_otherdistro: refactor spec file import
import_otherdistro.py: avoid deleting all records if no spec files found
import_otherdistro.py: create layer/branch if they don't exist
Add sha256sum to Source model
Record sha256sum of other distro source files
dockersetup: require email address
import_otherdistro: optionally store local path
import_otherdistro: fix handling of garbage in description values
Determine if spec file patches are actually applied and striplevel
docker-compose: fix missing DATABASE_USER for layerscelery service
docker: add dependencies for derivative import
tasks: support running non-shell commands
tasks: fix incorrect closing tag on button
Enable task log/progress to work within docker
tasks: handle carriage returns in task output
Record configure options
Fix erroneously importing package fields from spec files
docker: use python3 in migrate script
docker: improve nginx https configuration security
docker: Increase max packet size to 128M
tasks: disable broker heartbeat to workaround connection issues
dockersetup: 'easy' subprocess conversions to not use shell=True
dockersetup: require python 3.4.3 or later
More shell quoting
dockersetup: remove redundant code to update non-HTTPS lines in nginx-ssl.conf
dockersetup: update nginx-ssl.conf in update mode
Reimplement simplesearch
admin: allow searching ClassicRecipes by cover_pn
requirements.txt: update versions
Set permissions for all volumes
docker: ensure application files are owned by root
Fix incorrect URL name leading to internal server error
Add license / note for django-registration-templates
Add LICENSE texts for distributed components
COPYING.MIT: update
admin: allow editing ClassicRecipe fields
Fix progressive task output when it contains entity-escaped characters
Try to make running background commands more responsive
Add a workaround for ConnectionResetErrors in task_log_view()
docker: delete docker directory from /opt/layerindex
Use "Packages" in tab name on main comparison pages instead of "Recipes"
Include branch name in "Not being applied" patch tooltip
Tone down Axes aggressiveness
dockersetup: use docker-compose exec instead of docker exec
dockersetup: Use -T option with docker-compose exec
dockersetup: obtain and use the real project name instead of hardcoding
dockersetup: add option to specify docker-compose project name
Replace custom pagination with django-bootstrap-pagination
dockersetup: do not set site name if a database file is specified
dockersetup: add option to disable adding admin user
docker: remove hardcoded container names
README: add pointer to import layer index data
requirements.txt: update
check_requirements: write out output of safety check
check_requirements.sh: improve output for cron usage
Fix axes lockout not working
dockersetup: handle http/https port properly
dockersetup: show a warning if no email host specified
dockersetup: refactor arguments handling slightly
dockersetup: support encryption/authentication for SMTP
check_requirements: make output file naming a bit more consistent
.gitignore: add a few more files
docker: disable client MIME type sniffing
check_requirements.sh: more tweaks
Tweak password reset security question handling
Fix a couple of Edit Profile form message bugs
requirements.txt: update pillow
auth_views: minor indentation fix
Fix admin logout login button redirection
Set string representation for UserProfile & SecurityQuestionAnswer models
Optionally allow accounts without security questions to reset password
Terri Oda (1):
dockersetup: quote user input sent to subprocess
.dockerignore | 8 +
.gitignore | 15 +
COPYING.MIT | 5 +-
Dockerfile | 8 +-
README | 278 +-
README.devel | 121 +
check_requirements.sh | 48 +-
docker-compose.yml | 95 +
docker/README | 99 +-
docker/certs/README | 7 +
docker/migrate.sh | 2 +-
docker/nginx-ssl.conf | 65 +-
docker/nginx.conf | 6 +-
docker/settings.py | 24 +-
dockersetup.py | 785 ++++
layerindex/admin.py | 31 +-
layerindex/auth_forms.py | 133 +-
layerindex/auth_views.py | 91 +-
layerindex/context_processors.py | 6 +-
layerindex/forms.py | 75 +-
layerindex/middleware.py | 15 +
layerindex/migrations/0028_branch_hidden.py | 20 +
.../migrations/0030_securityquestion.py | 46 +
.../0031_securityquestion_populate.py | 25 +
.../migrations/0032_patchdisposition.py | 31 +
.../migrations/0034_source_sha256sum.py | 20 +
.../migrations/0036_layerbranch_local_path.py | 20 +
layerindex/migrations/0037_patch_applied.py | 20 +
.../migrations/0038_patch_striplevel.py | 20 +
.../migrations/0041_recipe_configopts.py | 20 +
layerindex/models.py | 53 +
layerindex/recipeparse.py | 42 +
layerindex/securityquestions.py | 6 +
layerindex/simplesearch.py | 39 -
layerindex/static/LICENSE.bootstrap | 21 +
layerindex/static/LICENSE.chartjs | 9 +
layerindex/static/LICENSE.diff2html | 20 +
layerindex/static/LICENSE.jquery | 36 +
layerindex/tasks.py | 13 +-
layerindex/templatetags/addurlparameter.py | 29 -
layerindex/templatetags/pagination.py | 52 -
layerindex/tools/import_layer.py | 10 +-
layerindex/tools/import_layers.py | 2 +-
layerindex/tools/import_otherdistro.py | 253 +-
layerindex/tools/import_project.py | 8 +-
layerindex/tools/initial_db_dump.sh | 67 +
layerindex/tools/site_name.py | 71 +
layerindex/tools/update_classic_status.py | 10 +-
layerindex/update.py | 4 +-
layerindex/update_layer.py | 46 +-
layerindex/urls.py | 79 +-
layerindex/utils.py | 43 +-
layerindex/views.py | 187 +-
requirements.txt | 38 +-
rrs/static/js/jquery.tablesorter.js | 3945 ++++++++++++-----
rrs/tools/rrs_maintainer_history.py | 8 +-
rrs/tools/rrs_upgrade_history.py | 12 +-
rrs/tools/rrs_upstream_email.py | 2 +-
rrs/tools/upgrade_history_internal.py | 16 +-
settings.py | 11 +-
templates/base.html | 6 +-
.../activate.html | 2 +-
.../activation_complete.html | 2 +-
.../activation_email_body.txt} | 2 +-
.../activation_email_subject.txt | 0
.../activation_failed.html | 13 +
.../registration_complete.html | 0
.../registration_form.html | 2 +-
templates/layerindex/bulkchangesearch.html | 6 +-
templates/layerindex/classes.html | 6 +-
templates/layerindex/classicrecipedetail.html | 65 +
templates/layerindex/classicrecipes.html | 10 +-
templates/layerindex/classicstats.html | 2 +-
.../layerindex/comparisonrecipebase.html | 29 +-
templates/layerindex/distros.html | 6 +-
templates/layerindex/history.html | 6 +-
templates/layerindex/layers.html | 6 +-
templates/layerindex/machines.html | 6 +-
templates/layerindex/profile.html | 6 +
templates/layerindex/recipes.html | 6 +-
templates/layerindex/reviewlist.html | 6 +-
templates/layerindex/task.html | 21 +-
templates/layerindex/updatelist.html | 6 +-
templates/pagination.html | 57 -
templates/registration/LICENSE | 21 +
templates/registration/account_lockout.html | 6 +
.../{logout.html => logged_out.html} | 0
templates/registration/login.html | 6 +-
.../registration/password_change_form.html | 2 +-
.../registration/password_reset_complete.html | 2 +-
.../registration/password_reset_confirm.html | 8 +-
.../registration/password_reset_email.txt | 2 +-
.../registration/password_reset_fail.html | 6 +
.../registration/password_reset_form.html | 2 +-
urls.py | 26 +-
95 files changed, 5881 insertions(+), 1742 deletions(-)
create mode 100644 README.devel
create mode 100644 docker-compose.yml
create mode 100644 docker/certs/README
create mode 100755 dockersetup.py
create mode 100644 layerindex/middleware.py
create mode 100644 layerindex/migrations/0028_branch_hidden.py
create mode 100644 layerindex/migrations/0030_securityquestion.py
create mode 100644 layerindex/migrations/0031_securityquestion_populate.py
create mode 100644 layerindex/migrations/0032_patchdisposition.py
create mode 100644 layerindex/migrations/0034_source_sha256sum.py
create mode 100644 layerindex/migrations/0036_layerbranch_local_path.py
create mode 100644 layerindex/migrations/0037_patch_applied.py
create mode 100644 layerindex/migrations/0038_patch_striplevel.py
create mode 100644 layerindex/migrations/0041_recipe_configopts.py
create mode 100644 layerindex/securityquestions.py
delete mode 100644 layerindex/simplesearch.py
create mode 100644 layerindex/static/LICENSE.bootstrap
create mode 100644 layerindex/static/LICENSE.chartjs
create mode 100644 layerindex/static/LICENSE.diff2html
create mode 100644 layerindex/static/LICENSE.jquery
delete mode 100644 layerindex/templatetags/addurlparameter.py
delete mode 100644 layerindex/templatetags/pagination.py
create mode 100755 layerindex/tools/initial_db_dump.sh
create mode 100755 layerindex/tools/site_name.py
rename templates/{registration => django_registration}/activate.html (77%)
rename templates/{registration => django_registration}/activation_complete.html (62%)
rename templates/{registration/activation_email.txt => django_registration/activation_email_body.txt} (83%)
rename templates/{registration => django_registration}/activation_email_subject.txt (100%)
create mode 100644 templates/django_registration/activation_failed.html
rename templates/{registration => django_registration}/registration_complete.html (100%)
rename templates/{registration => django_registration}/registration_form.html (93%)
delete mode 100644 templates/pagination.html
create mode 100644 templates/registration/LICENSE
create mode 100644 templates/registration/account_lockout.html
rename templates/registration/{logout.html => logged_out.html} (100%)
create mode 100644 templates/registration/password_reset_fail.html
--
2.20.1
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2019-07-17 23:40 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-07-17 23:37 [layerindex-web][PATCH 000/126] Docker setup / misc fixes (cover letter only) Paul Eggleton
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.