Update "cleanup" and "update" services for Python 3
This commit is contained in:
		
							parent
							
								
									33513d5626
								
							
						
					
					
						commit
						053504d099
					
				
					 6 changed files with 32 additions and 22 deletions
				
			
		
							
								
								
									
										27
									
								
								README.md
									
										
									
									
									
								
							
							
						
						
									
										27
									
								
								README.md
									
										
									
									
									
								
							|  | @ -11,8 +11,7 @@ this repository elsewhere, such as Github, are for backup purposes | ||||||
| only.. | only.. | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| License | # License | ||||||
| ------- |  | ||||||
| 
 | 
 | ||||||
| The software included herein, such as the Python source files, are generally | The software included herein, such as the Python source files, are generally | ||||||
| licensed [AGPLv3](AGPLv3)-or-later.  The Javascript is a hodgepodge of | licensed [AGPLv3](AGPLv3)-or-later.  The Javascript is a hodgepodge of | ||||||
|  | @ -23,35 +22,29 @@ The content and text (such as the HTML files) is currently | ||||||
| [CC-BY-SA-3.0](CC-By-SA-3.0). | [CC-BY-SA-3.0](CC-By-SA-3.0). | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| Server configuration | # Server configuration | ||||||
| -------------------- |  | ||||||
| 
 | 
 | ||||||
| conservancy's webserver runs on a machine called aspen.sfconservancy.org, which | Conservancy's webserver runs on a standard Debian installation. For | ||||||
| is a standard Debian installation. | configuration requirements, see `deploy/ansible/install.yml`. | ||||||
| 
 |  | ||||||
| The following packages are installed to make Django and Apache work on a |  | ||||||
| squeeze install: |  | ||||||
| 
 |  | ||||||
|     $ aptitude install python-django apache2 sqlite3 python3-sqlite libapache2-mod-wsgi-py3 |  | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| Django setup | # Django setup | ||||||
| ------------ |  | ||||||
| 
 | 
 | ||||||
| 0. Make sure the Python module 'djangopw', with the global variable | 0. Make sure the Python module 'djangopw', with the global variable | ||||||
|    'djangoadmin_password' is somewhere importable in the default |    'djangoadmin_password' is somewhere importable in the default | ||||||
|    PYTHON_PATH. |    PYTHON_PATH. | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| Local development | # Local development | ||||||
| --------- | 
 | ||||||
|  | Python dependencies are tied to the versions available in Debian. | ||||||
| 
 | 
 | ||||||
|     python3 -m pip install -r requirements.txt |     python3 -m pip install -r requirements.txt | ||||||
|     cd www |     cd www | ||||||
|     python manage.py runserver |     python manage.py runserver | ||||||
| 
 | 
 | ||||||
| Deploying | 
 | ||||||
| --------- | # Deploying | ||||||
| 
 | 
 | ||||||
| Changes pushed to the https://k.sfconservancy.org/website repository are | Changes pushed to the https://k.sfconservancy.org/website repository are | ||||||
| automatically deployed to the production website by the `conservancy-www-update` | automatically deployed to the production website by the `conservancy-www-update` | ||||||
|  |  | ||||||
							
								
								
									
										17
									
								
								systemd/README.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								systemd/README.md
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,17 @@ | ||||||
|  | Install with: | ||||||
|  | 
 | ||||||
|  |     cp systemd/conservancy-www-*.{service,timer} /etc/systemd/system | ||||||
|  |     systemctl enable conservancy-www-cleanup.service | ||||||
|  |     systemctl start conservancy-www-cleanup.service | ||||||
|  |     systemctl enable conservancy-www-update.timer | ||||||
|  |     systemctl start conservancy-www-update.timer | ||||||
|  | 
 | ||||||
|  | Monitor with: | ||||||
|  | 
 | ||||||
|  |     systemctl list-timers --all | ||||||
|  |     journalctl --catalog --follow --unit conservancy-www-update.service | ||||||
|  | 
 | ||||||
|  | Updates will fail unless `/var/www/website` has a git upstream, so set that with: | ||||||
|  | 
 | ||||||
|  |     git remote add upstream https://k.sfconservancy.org/website | ||||||
|  |     git branch --set-upstream-to=upstream/master master | ||||||
|  | @ -4,8 +4,8 @@ Before=apache2.service | ||||||
| 
 | 
 | ||||||
| [Service] | [Service] | ||||||
| Type=oneshot | Type=oneshot | ||||||
| User=www | User=www-data | ||||||
| ExecStart=/usr/bin/python /var/www/website/www/manage.py clearsessions --verbosity 0 | ExecStart=/usr/bin/python3 /var/www/website/www/manage.py clearsessions --verbosity 0 | ||||||
| 
 | 
 | ||||||
| SystemCallFilter=~@clock @cpu-emulation @debug @module @mount @obsolete | SystemCallFilter=~@clock @cpu-emulation @debug @module @mount @obsolete | ||||||
| CapabilityBoundingSet= | CapabilityBoundingSet= | ||||||
|  |  | ||||||
|  | @ -3,7 +3,7 @@ Description=Update Conservancy website checkout | ||||||
| 
 | 
 | ||||||
| [Service] | [Service] | ||||||
| Type=oneshot | Type=oneshot | ||||||
| User=www | User=www-data | ||||||
| WorkingDirectory=/var/www/website | WorkingDirectory=/var/www/website | ||||||
| ExecStart=/var/www/website/systemd/conservancy-www-update.sh | ExecStart=/var/www/website/systemd/conservancy-www-update.sh | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -30,7 +30,7 @@ fi | ||||||
| 
 | 
 | ||||||
| exitcode=0 | exitcode=0 | ||||||
| git merge --quiet --ff-only "$git_remote" "$git_refspec" | git merge --quiet --ff-only "$git_remote" "$git_refspec" | ||||||
| python2 -m compileall -q -x - www || exitcode=$? | python3 -m compileall -q -x - www || exitcode=$? | ||||||
| chgrp -R www-data www || exitcode=$? | chgrp -R www-data www || exitcode=$? | ||||||
| chmod -R g+rX-w,o+X-w www || exitcode=$? | chmod -R g+rX-w,o+X-w www || exitcode=$? | ||||||
| chmod -R o+r www/conservancy/static || exitcode=$? | chmod -R o+r www/conservancy/static || exitcode=$? | ||||||
|  |  | ||||||
|  | @ -28,7 +28,7 @@ FORCE_CANONICAL_HOSTNAME = False if DEBUG else 'sfconservancy.org' | ||||||
| 
 | 
 | ||||||
| ALLOWED_HOSTS = [ 'www.sfconservancy.org', 'aspen.sfconservancy.org', 'sfconservancy.org',  '104.130.70.210' ] | ALLOWED_HOSTS = [ 'www.sfconservancy.org', 'aspen.sfconservancy.org', 'sfconservancy.org',  '104.130.70.210' ] | ||||||
| if DEBUG: | if DEBUG: | ||||||
|     ALLOWED_HOSTS.append('localhost') |     ALLOWED_HOSTS = ['*'] | ||||||
| 
 | 
 | ||||||
| REDIRECT_TABLE = { | REDIRECT_TABLE = { | ||||||
|     'www.sf-conservancy.org': 'sfconservancy.org', |     'www.sf-conservancy.org': 'sfconservancy.org', | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue