Difference between revisions of "User:Vladimir Panteleev/Website staging"

From D Wiki
Jump to: navigation, search
(copy-paste from https://issues.dlang.org/show_bug.cgi?id=14427#c2)
 
(wiki syntax)
Line 1: Line 1:
I think we need a staging area of sorts - a controlled environment which pulls
+
I think we need a staging area of sorts - a controlled environment which pulls strictly the website from git, performs a clean build, allows previewing, and only then uploads it to dlang.org.
strictly the website from git, performs a clean build, allows previewing, and
 
only then uploads it to dlang.org.
 
  
 
This would solve a few issues:
 
This would solve a few issues:
  
- Removes requirement to install software to fully build dlang.org (e.g.
+
* Removes requirement to install software to fully build dlang.org (e.g. kindlegen)
kindlegen)
+
* Removes requirement to use a Posix OS (completely building the website is currently impossible on Windows)
- Removes requirement to use a Posix OS (completely building the website is
+
* Removes issues due to environment (wrong/incompatible software versions, e.g. rsync)
currently impossible on Windows)
+
* Removes bottlenecks on Jan to resolve permission issues
- Removes issues due to environment (wrong/incompatible software versions, e.g.
+
* Removes upload bandwidth bottleneck for slow connections
rsync)
+
* Fixes users having to upload the entire site because timestamps don't match between users' local copies
- Removes bottlenecks on Jan to resolve permission issues
 
- Removes upload bandwidth bottleneck for slow connections
 
- Fixes users having to upload the entire site because timestamps don't match
 
between users' local copies
 
  
I have something like this on dlang.k3.1azy.net (same server which hosts
+
I have something like this on dlang.k3.1azy.net (same server which hosts forum.dlang.org). Andrei has access already. The workflow is:
forum.dlang.org). Andrei has access already. The workflow is:
 
  
1. If there have been some significant changes in the build infrastructure
+
# If there have been some significant changes in the build infrastructure which might cause a dirty build, run: <tt>ssh dlang@k3.1azy.net run/clean</tt>. This will delete all intermediary files and force clean all repositories (incl. dub stuff).
which might cause a dirty build, run: `ssh dlang@k3.1azy.net run/clean`. This
+
# Run <tt>ssh dlang@k3.1azy.net run/update</tt>
will delete all intermediary files and force clean all repositories (incl. dub
+
# Browse to http://dlang.k3.1azy.net/ and make sure there are no glaring problems.
stuff).
+
# Run <tt>ssh dlang@k3.1azy.net run/upload</tt>
2. Run `ssh dlang@k3.1azy.net run/update`
 
3. Browse to http://dlang.k3.1azy.net/ and make sure there are no glaring
 
problems.
 
4. Run `ssh dlang@k3.1azy.net run/upload`
 

Revision as of 15:21, 12 May 2015

I think we need a staging area of sorts - a controlled environment which pulls strictly the website from git, performs a clean build, allows previewing, and only then uploads it to dlang.org.

This would solve a few issues:

  • Removes requirement to install software to fully build dlang.org (e.g. kindlegen)
  • Removes requirement to use a Posix OS (completely building the website is currently impossible on Windows)
  • Removes issues due to environment (wrong/incompatible software versions, e.g. rsync)
  • Removes bottlenecks on Jan to resolve permission issues
  • Removes upload bandwidth bottleneck for slow connections
  • Fixes users having to upload the entire site because timestamps don't match between users' local copies

I have something like this on dlang.k3.1azy.net (same server which hosts forum.dlang.org). Andrei has access already. The workflow is:

  1. If there have been some significant changes in the build infrastructure which might cause a dirty build, run: ssh dlang@k3.1azy.net run/clean. This will delete all intermediary files and force clean all repositories (incl. dub stuff).
  2. Run ssh dlang@k3.1azy.net run/update
  3. Browse to http://dlang.k3.1azy.net/ and make sure there are no glaring problems.
  4. Run ssh dlang@k3.1azy.net run/upload