Compare commits
	
		
			58 Commits
		
	
	
		
			services_c
			...
			text-tweak
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 704a678de5 | |||
| abe8840d2a | |||
| 1c1e51f5d6 | |||
| 7bd00564f4 | |||
| 39d17a1e0b | |||
| deeecb22b9 | |||
| 177cc16dde | |||
| cf2c8639b1 | |||
| e34352df6e | |||
| e9d996b061 | |||
| 1ef6084a27 | |||
| 05527f444a | |||
| 9348b5066e | |||
| 4bef557301 | |||
| 0dc1ffadb4 | |||
| 9cfda4aa24 | |||
| 8776572f3d | |||
| a444219ef8 | |||
| 7eeb732aca | |||
| cb9d863f66 | |||
| dc531455ee | |||
| 3aac13abd7 | |||
| 469906c790 | |||
| 06b82858f9 | |||
| 3da45feb42 | |||
| 6748e69a51 | |||
| 93b3c55221 | |||
| 2b489c6025 | |||
| 6323b4c2c9 | |||
| da6b4a1c02 | |||
| 72b39ad07e | |||
| f8e52a7381 | |||
| 8bdfe16249 | |||
| 3873d54494 | |||
| bcaf9601e9 | |||
| b9cdae9857 | |||
| caa1e521ad | |||
| 741df0045b | |||
| d00d763645 | |||
| 46732e1708 | |||
| d88ecbcc1a | |||
| eb5af2854f | |||
| 544cd47114 | |||
| 476df063b4 | |||
| 0e62b9e045 | |||
| 9ce17b0026 | |||
| ff73beef10 | |||
| 5924375117 | |||
| a3fee0493b | |||
| a892ecf5b4 | |||
| 909554e58d | |||
| 50959f27ac | |||
| fee2ffd1e1 | |||
| 97857a8c27 | |||
| eb38c9514a | |||
| 39eef16f9e | |||
| 04c7d20a56 | |||
| a2f5a6cbac | 
							
								
								
									
										37
									
								
								.drone.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								.drone.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,37 @@ | |||||||
|  | --- | ||||||
|  | kind: pipeline | ||||||
|  |  | ||||||
|  | name: default | ||||||
|  |  | ||||||
|  | steps: | ||||||
|  |   - name: Build autonomic.zone docker image | ||||||
|  |     image: docker:stable | ||||||
|  |     volumes: | ||||||
|  |       - name: docker_sock | ||||||
|  |         path: /var/run/docker.sock | ||||||
|  |     commands: | ||||||
|  |       - docker build --no-cache -t autonomic/autonomic.zone:drone . | ||||||
|  |  | ||||||
|  |   - name: Deploy Autonomic.zone with Dokku | ||||||
|  |     image: appleboy/drone-git-push:0.2.0-linux-amd64 | ||||||
|  |     settings: | ||||||
|  |       remote: ssh://dokku@dokku.autonomic.zone:222/autonomic.zone | ||||||
|  |       ssh_key: | ||||||
|  |         from_secret: drone_deploy_key | ||||||
|  |     when: | ||||||
|  |       branch: master | ||||||
|  |  | ||||||
|  |   - name: Send notification to chat.internal.autonomic.zone | ||||||
|  |     image: rmilewski/drone-rocket:latest | ||||||
|  |     when: | ||||||
|  |       status: [success, failure] | ||||||
|  |     settings: | ||||||
|  |       webhook: | ||||||
|  |         from_secret: rocket_chat_webhook | ||||||
|  |       channel: drone-notify | ||||||
|  |       username: drone-notifications-bot | ||||||
|  |       message: | ||||||
|  |         - value: "${DRONE_COMMIT_AUTHOR} deployed site.autonomic.zone (see [commit](${DRONE_COMMIT_LINK})) :partying_face:" | ||||||
|  |           when: | ||||||
|  |             DRONE_BUILD_STATUS: success | ||||||
|  |         - value: "[commit](${DRONE_COMMIT_LINK}) failed to deploy site.autonomic.zone (see [logs](https://drone.autonomic.zone/autonomic-cooperative/autonomic.zone/${DRONE_BUILD_NUMBER})) :confounded:" | ||||||
							
								
								
									
										2
									
								
								.envrc.sample
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								.envrc.sample
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,2 @@ | |||||||
|  | # The path to our pass credentials store | ||||||
|  | export PASSWORD_STORE_DIR=$(pwd)/../infrastructure/credentials/password-store | ||||||
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -3,5 +3,4 @@ dist/ | |||||||
| .jekyll-metadata | .jekyll-metadata | ||||||
| .jekyll-cache | .jekyll-cache | ||||||
| .DS_Store | .DS_Store | ||||||
| Gemfile.lock |  | ||||||
| *.gem | *.gem | ||||||
|  | |||||||
| @ -1,19 +0,0 @@ | |||||||
| stages: |  | ||||||
|   - deploy |  | ||||||
|  |  | ||||||
| variables: |  | ||||||
|   GIT_DEPTH: 1 |  | ||||||
|  |  | ||||||
|  |  | ||||||
| pages: |  | ||||||
|   image: jekyll/jekyll:4 |  | ||||||
|   stage: deploy |  | ||||||
|   script: |  | ||||||
|     - jekyll build -d public |  | ||||||
|     - apk add gzip --update-cache --repository http://dl-3.alpinelinux.org/alpine/edge/testing/ --allow-untrusted |  | ||||||
|     - gzip -v -k -6 $(find public -name '*.js' -o -name '*.html' -o -name '*.css') |  | ||||||
|   artifacts: |  | ||||||
|     paths: |  | ||||||
|       - public |  | ||||||
|   only: |  | ||||||
|     - master |  | ||||||
							
								
								
									
										11
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								CHANGELOG.md
									
									
									
									
									
								
							| @ -3,12 +3,17 @@ | |||||||
| All notable changes to this project will be documented in this file. The format | All notable changes to this project will be documented in this file. The format | ||||||
| is based on [Keep a Changelog] and this project adheres to [Semantic Versioning]. | is based on [Keep a Changelog] and this project adheres to [Semantic Versioning]. | ||||||
|  |  | ||||||
| [Keep a Changelog]: http://keepachangelog.com/en/1.0.0/ | [keep a changelog]: http://keepachangelog.com/en/1.0.0/ | ||||||
| [Semantic Versioning]: http://semver.org/spec/v2.0.0.html | [semantic versioning]: http://semver.org/spec/v2.0.0.html | ||||||
|  |  | ||||||
|  | ## [2.0.0] - 2020-03-30 | ||||||
|  |  | ||||||
|  | - Moved website deployment to [git.autonomic.zone](https://git.autonomic.zone). | ||||||
|  |  | ||||||
| ## [1.0.2] - 2017-11-05 | ## [1.0.2] - 2017-11-05 | ||||||
|  |  | ||||||
| ## Added | ## Added | ||||||
|  |  | ||||||
| - [#18]: Add shared account email. | - [#18]: Add shared account email. | ||||||
|  |  | ||||||
| [#18]: https://gitlab.com/autonomic-cooperative/autonomic-cooperative.gitlab.io/merge_requests/18 | [#18]: https://gitlab.com/autonomic-cooperative/autonomic-cooperative.gitlab.io/merge_requests/18 | ||||||
| @ -16,9 +21,11 @@ is based on [Keep a Changelog] and this project adheres to [Semantic Versioning] | |||||||
| ## [1.0.1] - 2017-10-14 | ## [1.0.1] - 2017-10-14 | ||||||
|  |  | ||||||
| ## Added | ## Added | ||||||
|  |  | ||||||
| - [#17]: Added automated Gitlab CI production builds. | - [#17]: Added automated Gitlab CI production builds. | ||||||
|  |  | ||||||
| [#17]: https://gitlab.com/autonomic-cooperative/autonomic-cooperative.gitlab.io/merge_requests/17 | [#17]: https://gitlab.com/autonomic-cooperative/autonomic-cooperative.gitlab.io/merge_requests/17 | ||||||
|  |  | ||||||
| ## [1.0.0] - 2017-10-04 | ## [1.0.0] - 2017-10-04 | ||||||
|  |  | ||||||
| - Initial Release | - Initial Release | ||||||
|  | |||||||
| @ -1,8 +1,6 @@ | |||||||
| # Contributing | # Contributing | ||||||
|  |  | ||||||
| ### Not that these instructions may be out of date. If you find any quirks that aren't described in this file, please make patches. | ## What Is Jekyll | ||||||
|  |  | ||||||
| # What Is Jekyll |  | ||||||
|  |  | ||||||
| For those unfamiliar with how Jekyll works, check out [jekyll.rb] for all the | For those unfamiliar with how Jekyll works, check out [jekyll.rb] for all the | ||||||
| details, or read up on the basics of [front matter], [writing posts] and | details, or read up on the basics of [front matter], [writing posts] and | ||||||
| @ -13,53 +11,35 @@ details, or read up on the basics of [front matter], [writing posts] and | |||||||
| [writing posts]: https://jekyllrb.com/docs/posts/ | [writing posts]: https://jekyllrb.com/docs/posts/ | ||||||
| [creating pages]: https://jekyllrb.com/docs/pages/ | [creating pages]: https://jekyllrb.com/docs/pages/ | ||||||
|  |  | ||||||
| # Using RVM to Manage Ruby | ## Deploy It | ||||||
|  |  | ||||||
| In order to not blow up your computer handling a system wide Ruby installation, it is | 1. Push your changes to master and Dokku will try to automatically release | ||||||
| advised that you use [RVM](https://rvm.io/rvm/install). | 1. See the [Drone dashboard to see the build](https://drone.autonomic.zone/autonomic-cooperative/autonomic.zone/) | ||||||
|  |  | ||||||
| Once you've got that installed and configured, get the latest version of Ruby with: | ## Hack On It | ||||||
|  |  | ||||||
|  | The only prerequisite is [Docker](https://www.docker.com/). If you're on Debian, installing is easy. | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| $ rvm install 2.6.5 | $ curl -fsSL https://get.docker.com -o get-docker.sh  # have a look if you want | ||||||
|  | $ sh get-docker.sh | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| Select that version and then create an isolated [gemset](https://rvm.io/gemsets/basics) with: | Fire up the container with the following. | ||||||
|  |  | ||||||
| ```bash | ```bash | ||||||
| $ rvm use 2.6.5 | $ make dockerserver | ||||||
| $ rvm gemset create autonomic |  | ||||||
| $ rvm gemset use autonomic |  | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
| # Install Dependencies | Then visit the locally running website. | ||||||
|  |  | ||||||
| Then you can install your Ruby dependencies with: | > http://localhost:4000 | ||||||
|  |  | ||||||
| ``` bash | Then you can edit the files as normal and reload the page. | ||||||
| $ gem install jekyll bundler |  | ||||||
| $ bundle install |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| # Serve Website | ## Notes | ||||||
|  |  | ||||||
| And serve the website locally with: | 1. For configuration, please note, we now use a `dev` environment config file: | ||||||
|  |    `_config_dev.yml`. Hence if you edit one `_config*` file and you also want | ||||||
| ``` bash |    that change to be reflected in the other environment ("dev", "prod") then | ||||||
| $ make devserver |    edit the other file as well! | ||||||
| ``` |  | ||||||
|  |  | ||||||
| # Editing Content |  | ||||||
|  |  | ||||||
| Edit content in the `.md` files under `src` and `src/_posts`. |  | ||||||
|  |  | ||||||
| # Next time |  | ||||||
|  |  | ||||||
| When you're hacking later on (or in a new shell), you'll need to run: |  | ||||||
|  |  | ||||||
| ``` bash |  | ||||||
| $ rvm use 2.6.5 |  | ||||||
| $ rvm gemset use autonomic |  | ||||||
| ``` |  | ||||||
|  |  | ||||||
| And then you'll have access to the environment. |  | ||||||
|  | |||||||
							
								
								
									
										15
									
								
								Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								Dockerfile
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,15 @@ | |||||||
|  | FROM decentral1se/jekyll:4 | ||||||
|  |  | ||||||
|  | EXPOSE 4000 | ||||||
|  |  | ||||||
|  | WORKDIR /usr/src/app | ||||||
|  |  | ||||||
|  | COPY . ${WORKDIR} | ||||||
|  |  | ||||||
|  | COPY sbin/* /sbin/ | ||||||
|  |  | ||||||
|  | RUN bundle config --global frozen 1 | ||||||
|  |  | ||||||
|  | RUN bundle install | ||||||
|  |  | ||||||
|  | ENTRYPOINT ["/sbin/entrypoint.sh"] | ||||||
							
								
								
									
										75
									
								
								Gemfile.lock
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								Gemfile.lock
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,75 @@ | |||||||
|  | PATH | ||||||
|  |   remote: . | ||||||
|  |   specs: | ||||||
|  |     autonomic (0.0.0) | ||||||
|  |  | ||||||
|  | GEM | ||||||
|  |   remote: https://rubygems.org/ | ||||||
|  |   specs: | ||||||
|  |     addressable (2.7.0) | ||||||
|  |       public_suffix (>= 2.0.2, < 5.0) | ||||||
|  |     colorator (1.1.0) | ||||||
|  |     concurrent-ruby (1.1.6) | ||||||
|  |     em-websocket (0.5.1) | ||||||
|  |       eventmachine (>= 0.12.9) | ||||||
|  |       http_parser.rb (~> 0.6.0) | ||||||
|  |     eventmachine (1.2.7) | ||||||
|  |     ffi (1.12.2) | ||||||
|  |     forwardable-extended (2.6.0) | ||||||
|  |     http_parser.rb (0.6.0) | ||||||
|  |     i18n (1.8.2) | ||||||
|  |       concurrent-ruby (~> 1.0) | ||||||
|  |     jekyll (4.0.0) | ||||||
|  |       addressable (~> 2.4) | ||||||
|  |       colorator (~> 1.0) | ||||||
|  |       em-websocket (~> 0.5) | ||||||
|  |       i18n (>= 0.9.5, < 2) | ||||||
|  |       jekyll-sass-converter (~> 2.0) | ||||||
|  |       jekyll-watch (~> 2.0) | ||||||
|  |       kramdown (~> 2.1) | ||||||
|  |       kramdown-parser-gfm (~> 1.0) | ||||||
|  |       liquid (~> 4.0) | ||||||
|  |       mercenary (~> 0.3.3) | ||||||
|  |       pathutil (~> 0.9) | ||||||
|  |       rouge (~> 3.0) | ||||||
|  |       safe_yaml (~> 1.0) | ||||||
|  |       terminal-table (~> 1.8) | ||||||
|  |     jekyll-sass-converter (2.1.0) | ||||||
|  |       sassc (> 2.0.1, < 3.0) | ||||||
|  |     jekyll-watch (2.2.1) | ||||||
|  |       listen (~> 3.0) | ||||||
|  |     kramdown (2.1.0) | ||||||
|  |     kramdown-parser-gfm (1.1.0) | ||||||
|  |       kramdown (~> 2.0) | ||||||
|  |     liquid (4.0.3) | ||||||
|  |     listen (3.2.1) | ||||||
|  |       rb-fsevent (~> 0.10, >= 0.10.3) | ||||||
|  |       rb-inotify (~> 0.9, >= 0.9.10) | ||||||
|  |     mercenary (0.3.6) | ||||||
|  |     pathutil (0.16.2) | ||||||
|  |       forwardable-extended (~> 2.6) | ||||||
|  |     public_suffix (4.0.3) | ||||||
|  |     rb-fsevent (0.10.3) | ||||||
|  |     rb-inotify (0.10.1) | ||||||
|  |       ffi (~> 1.0) | ||||||
|  |     rouge (3.17.0) | ||||||
|  |     safe_yaml (1.0.5) | ||||||
|  |     sassc (2.2.1) | ||||||
|  |       ffi (~> 1.9) | ||||||
|  |     terminal-table (1.8.0) | ||||||
|  |       unicode-display_width (~> 1.1, >= 1.1.1) | ||||||
|  |     unicode-display_width (1.7.0) | ||||||
|  |  | ||||||
|  | PLATFORMS | ||||||
|  |   ruby | ||||||
|  |  | ||||||
|  | DEPENDENCIES | ||||||
|  |   autonomic! | ||||||
|  |   bundler (>= 2.1.4) | ||||||
|  |   jekyll (>= 4) | ||||||
|  |  | ||||||
|  | RUBY VERSION | ||||||
|  |    ruby 2.6.5p114 | ||||||
|  |  | ||||||
|  | BUNDLED WITH | ||||||
|  |    2.1.4 | ||||||
							
								
								
									
										15
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										15
									
								
								Makefile
									
									
									
									
									
								
							| @ -4,3 +4,18 @@ devserver: | |||||||
| 	@echo "Serving development site from $(DEV_DIST_DIR)" | 	@echo "Serving development site from $(DEV_DIST_DIR)" | ||||||
| 	@jekyll serve --watch --incremental --destination $(DEV_DIST_DIR) | 	@jekyll serve --watch --incremental --destination $(DEV_DIST_DIR) | ||||||
| .PHONY: devserver | .PHONY: devserver | ||||||
|  |  | ||||||
|  | dockerbuild: | ||||||
|  | 	@docker build -t autonomic/autonomic.zone:testing . | ||||||
|  | .PHONY: dockerbuild | ||||||
|  |  | ||||||
|  | dockerserver: dockerbuild | ||||||
|  | 	@docker run \ | ||||||
|  | 		-e JEKYLL_PORT=4000 \ | ||||||
|  | 		-e JEKYLL_HOST=0.0.0.0 \ | ||||||
|  | 		-e JEKYLL_CONFIG=_config_dev.yml \ | ||||||
|  | 		-v $$(pwd):/usr/src/app \ | ||||||
|  | 		-p 4000:4000 \ | ||||||
|  | 		-d \ | ||||||
|  | 		autonomic/autonomic.zone:testing | ||||||
|  | .PHONY: dockerserver | ||||||
|  | |||||||
							
								
								
									
										28
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								README.md
									
									
									
									
									
								
							| @ -1,29 +1,21 @@ | |||||||
| [](https://gitlab.com/autonomic-cooperative/autonomic-cooperative.gitlab.io/commits/master) |  | ||||||
|  |  | ||||||
| # autonomic.zone | # autonomic.zone | ||||||
|  |  | ||||||
|  | [](https://drone.autonomic.zone/autonomic-cooperative/autonomic.zone) | ||||||
|  |  | ||||||
|  | > https://site.autonomic.zone | ||||||
|  |  | ||||||
| A [Jekyll] based site for the Autonomic Cooperative. The site is based on the [spectral-jekyll-theme] template. | A [Jekyll] based site for the Autonomic Cooperative. The site is based on the [spectral-jekyll-theme] template. | ||||||
|  |  | ||||||
| master is served up to [autonomic.zone] and [autonomic-cooperative.gitlab.io]. | [jekyll]: https://jekyllrb.com/ | ||||||
|  |  | ||||||
| [Jekyll]: https://jekyllrb.com/ |  | ||||||
| [spectral-jekyll-theme]: https://github.com/andrewbanchich/spectral-jekyll-theme | [spectral-jekyll-theme]: https://github.com/andrewbanchich/spectral-jekyll-theme | ||||||
| [autonomic.zone]: https://autonomic.zone/ |  | ||||||
| [autonomic-cooperative.gitlab.io]: http://autonomic-cooperative.gitlab.io/ |  | ||||||
|  |  | ||||||
| # Make a change | # Deploy | ||||||
|  |  | ||||||
| Work on features in branches. If you commit to master, open a merge request from your branch unless it is a tiny change. Our [pages] CI stage will push any changes on master branch to [autonomic.zone]. |  | ||||||
|  |  | ||||||
| [deploy]: https://gitlab.com/autonomic-cooperative/autonomic-cooperative.gitlab.io/blob/d16aec42bd2ddd7449f55d9f06b03499cc660b22/.gitlab-ci.yml#L17 |  | ||||||
|  |  | ||||||
| Watch the [CI/CD pipeline] to see that it builds successfully. |  | ||||||
|  |  | ||||||
| [CI/CD pipeline]: https://gitlab.com/autonomic-cooperative/autonomic-cooperative.gitlab.io/pipelines |  | ||||||
|  |  | ||||||
|  | 1. Push your changes to master and Dokku will try to automatically release | ||||||
|  | 1. See the [Drone dashboard to see the build](https://drone.autonomic.zone/autonomic-cooperative/autonomic.zone/) | ||||||
|  |  | ||||||
| # Contribute | # Contribute | ||||||
|  |  | ||||||
| Please see [CONTRIBUTING.md] for the juicy details. It may need to be updated, so please submit patches if you discover some quirk! | Please see [CONTRIBUTING.md] for the juicy details. | ||||||
|  |  | ||||||
| [CONTRIBUTING.md]: https://gitlab.com/autonomic-cooperative/autonomic-cooperative.gitlab.io/blob/master/CONTRIBUTING.md | [contributing.md]: ./CONTRIBUTING.md | ||||||
|  | |||||||
| @ -1,3 +1,4 @@ | |||||||
|  | --- | ||||||
| title: Autonomic Co-operative | title: Autonomic Co-operative | ||||||
| email: helo@autonomic.zone | email: helo@autonomic.zone | ||||||
| description: Sustainability, Transparency, Privacy | description: Sustainability, Transparency, Privacy | ||||||
							
								
								
									
										27
									
								
								_config_prod.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								_config_prod.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,27 @@ | |||||||
|  | --- | ||||||
|  | title: Autonomic Co-operative | ||||||
|  | email: helo@autonomic.zone | ||||||
|  | description: Sustainability, Transparency, Privacy | ||||||
|  | baseurl: "" | ||||||
|  | url: "https://site.autonomic.zone" | ||||||
|  | source: src | ||||||
|  | destination: dist | ||||||
|  | sass: | ||||||
|  |   sass_dir: ./assets/styles | ||||||
|  | featured-image-source: | ||||||
|  | 500px_url: | ||||||
|  | github_url: | ||||||
|  | mastodon_url: https://sunbeam.city/@autonomic | ||||||
|  | twitter_url: https://twitter.com/autonomiccoop | ||||||
|  | markdown: kramdown | ||||||
|  | permalink: pretty | ||||||
|  | collections: | ||||||
|  |   posts: | ||||||
|  |     output: true | ||||||
|  |     permalink: /blog/:title/ | ||||||
|  |   clients: | ||||||
|  |     output: false | ||||||
|  | exclude: | ||||||
|  |   - vendor | ||||||
|  |   - Gemfile | ||||||
|  |   - Gemfile.lock | ||||||
							
								
								
									
										5
									
								
								ansible/.vault.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										5
									
								
								ansible/.vault.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,5 @@ | |||||||
|  | #!/bin/bash | ||||||
|  |  | ||||||
|  | set -eu -o pipefail | ||||||
|  |  | ||||||
|  | echo $(pass show hosts/autonomic-dokku/vault/password) | ||||||
							
								
								
									
										47
									
								
								ansible/post-deploy.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								ansible/post-deploy.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,47 @@ | |||||||
|  | --- | ||||||
|  | - hosts: all | ||||||
|  |   gather_facts: false | ||||||
|  |   tasks: | ||||||
|  |     - name: Load variables | ||||||
|  |       include_vars: | ||||||
|  |         dir: "{{ dokku_lib_root }}/data/ansible/autonomic.zone/vars/" | ||||||
|  |         extensions: | ||||||
|  |           - yml | ||||||
|  |  | ||||||
|  |     - name: Set HTTP 80 port proxy | ||||||
|  |       dokku_ports: | ||||||
|  |         app: autonomic.zone | ||||||
|  |         mappings: | ||||||
|  |           - "http:80:{{ http_port }}" | ||||||
|  |         state: present | ||||||
|  |  | ||||||
|  |     - name: Setup LE certificates | ||||||
|  |       shell: dokku letsencrypt autonomic.zone | ||||||
|  |       args: | ||||||
|  |         creates: /home/dokku/autonomic.zone/letsencrypt/certs | ||||||
|  |  | ||||||
|  |     - name: Setup LE certificates renew cron job | ||||||
|  |       shell: dokku letsencrypt:cron-job --add | ||||||
|  |       args: | ||||||
|  |         creates: /home/dokku/autonomic.zone/letsencrypt/cron-job | ||||||
|  |  | ||||||
|  |     - name: Specify docker volume mounts | ||||||
|  |       dokku_storage: | ||||||
|  |         app: autonomic.zone | ||||||
|  |         mounts: | ||||||
|  |           - /home/dokku/autonomic.zone/letsencrypt/certs/current/key.pem:/etc/x509/https/tls.key | ||||||
|  |           - /home/dokku/autonomic.zone/letsencrypt/certs/current/cert.pem:/etc/x509/https/tls.crt | ||||||
|  |  | ||||||
|  |     - name: Set HTTP 443 port | ||||||
|  |       dokku_ports: | ||||||
|  |         app: autonomic.zone | ||||||
|  |         mappings: | ||||||
|  |           - "https:443:{{ http_port }}" | ||||||
|  |         state: present | ||||||
|  |  | ||||||
|  |     - name: Remove automatically configured ports | ||||||
|  |       dokku_ports: | ||||||
|  |         app: autonomic.zone | ||||||
|  |         mappings: | ||||||
|  |           - "http:4000:4000" | ||||||
|  |         state: absent | ||||||
							
								
								
									
										54
									
								
								ansible/pre-deploy.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								ansible/pre-deploy.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,54 @@ | |||||||
|  | --- | ||||||
|  | - hosts: all | ||||||
|  |   gather_facts: false | ||||||
|  |   tasks: | ||||||
|  |     - name: Load variables | ||||||
|  |       include_vars: | ||||||
|  |         dir: "{{ dokku_lib_root }}/data/ansible/autonomic.zone/vars/" | ||||||
|  |         extensions: | ||||||
|  |           - yml | ||||||
|  |  | ||||||
|  |     - name: Prepare Python system dependencies | ||||||
|  |       become: true | ||||||
|  |       apt: | ||||||
|  |         name: python3-pip | ||||||
|  |         state: present | ||||||
|  |  | ||||||
|  |     - name: Install dns-lexicon system wide | ||||||
|  |       become: true | ||||||
|  |       pip: | ||||||
|  |         name: ["cryptography==2.8", "dns-lexicon==3.3.19"] | ||||||
|  |         executable: /usr/bin/pip3 | ||||||
|  |         state: present | ||||||
|  |  | ||||||
|  |     - name: "Create {{ domain }} DNS entry" | ||||||
|  |       gandi_dns: | ||||||
|  |         gandi_rest_token: "{{ gandi_rest_token }}" | ||||||
|  |         domain: "{{ domain }}" | ||||||
|  |         ipv4: "{{ dokku_domain_ipv4 }}" | ||||||
|  |         state: present | ||||||
|  |  | ||||||
|  |     - name: "Configure the {{ domain }} domain" | ||||||
|  |       dokku_domains: | ||||||
|  |         app: autonomic.zone | ||||||
|  |         domains: | ||||||
|  |           - "{{ domain }}" | ||||||
|  |         state: present | ||||||
|  |  | ||||||
|  |     - name: Ensure default app configured domains go away | ||||||
|  |       dokku_domains: | ||||||
|  |         app: autonomic.zone | ||||||
|  |         domains: | ||||||
|  |           - autonomic.zone.dokku.autonomic.zone | ||||||
|  |         state: absent | ||||||
|  |  | ||||||
|  |     - name: Configure the dokku app environment | ||||||
|  |       dokku_config: | ||||||
|  |         app: autonomic.zone | ||||||
|  |         restart: false | ||||||
|  |         config: | ||||||
|  |           DOKKU_LETSENCRYPT_EMAIL: "{{ autonomic_admin_mail }}" | ||||||
|  |           JEKYLL_HOST: "0.0.0.0" | ||||||
|  |           JEKYLL_PORT: "{{ http_port }}" | ||||||
|  |           JEKYLL_CONFIG: "{{ jekyll_config }}" | ||||||
|  |           JEKYLL_ENV: "{{ jekyll_env }}" | ||||||
							
								
								
									
										6
									
								
								ansible/requirements.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ansible/requirements.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,6 @@ | |||||||
|  | --- | ||||||
|  | - src: dokku_bot.ansible_dokku | ||||||
|  |   version: v2020.3.15 | ||||||
|  |  | ||||||
|  | - src: https://git.autonomic.zone/autonomic-cooperative/autonomic.gandi/archive/0.0.5.tar.gz | ||||||
|  |   name: autonomic.gandi | ||||||
							
								
								
									
										8
									
								
								ansible/vars/all.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								ansible/vars/all.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | |||||||
|  | --- | ||||||
|  | ansible_python_interpreter: "/usr/bin/python3" | ||||||
|  | autonomic_admin_mail: "helo@autonomic.zone" | ||||||
|  | dokku_domain_ipv4: "94.130.105.60" | ||||||
|  | domain: "autonomic.zone" | ||||||
|  | http_port: "4000" | ||||||
|  | jekyll_config: "_config_prod.yml" | ||||||
|  | jekyll_env: "production" | ||||||
							
								
								
									
										8
									
								
								ansible/vars/ansible_become_pass.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								ansible/vars/ansible_become_pass.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | |||||||
|  | --- | ||||||
|  | ansible_become_pass: !vault | | ||||||
|  |   $ANSIBLE_VAULT;1.1;AES256 | ||||||
|  |   34396236353735666531323238656533643465303131663464613162396333313836363630666266 | ||||||
|  |   6539323631656635333864316166633064633366323936610a656137616334313534333635313232 | ||||||
|  |   35323561303763366563316631313638363333393763323935343563303963616334336639386462 | ||||||
|  |   3837383830616637360a373539613630356564363662393836366462666430353439353637303035 | ||||||
|  |   63396633303166343433313439303539313637306637663137313533316531616434 | ||||||
							
								
								
									
										8
									
								
								ansible/vars/gandi_rest_token.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								ansible/vars/gandi_rest_token.yml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,8 @@ | |||||||
|  | --- | ||||||
|  | gandi_rest_token: !vault | | ||||||
|  |   $ANSIBLE_VAULT;1.1;AES256 | ||||||
|  |   65653461333739626564356366313338613561396163383161633561373736626138306633353261 | ||||||
|  |   3230376530616361343063346533633464643165643739310a303965353336353063353564643263 | ||||||
|  |   37396139643161346265616630633530353866356338386134383565363238393932666565663163 | ||||||
|  |   3831393731353735350a313235376463643439363833616263653637623363386532636132366662 | ||||||
|  |   65313835306637323066396232653166313262613333633061313266363338646334 | ||||||
							
								
								
									
										5
									
								
								app.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								app.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,5 @@ | |||||||
|  | { | ||||||
|  |   "name": "autonomic.zone", | ||||||
|  |   "description": "Autonomics website on the world wide web", | ||||||
|  |   "repository": "https://git.autonomic.zone/autonomic-cooperative/autonomic.zone" | ||||||
|  | } | ||||||
| @ -8,8 +8,8 @@ Gem::Specification.new do |spec| | |||||||
|   spec.description = "" |   spec.description = "" | ||||||
|   spec.authors     = ['autonomic co-operative'] |   spec.authors     = ['autonomic co-operative'] | ||||||
|   spec.email       = 'autonomic.posteo.net' |   spec.email       = 'autonomic.posteo.net' | ||||||
|   spec.files       = `git ls-files -z`.split("\x0").select { |f| f.match(%r{^(assets|_layouts|_includes|_sass|LICENSE|README)}i) } |   spec.files       = 'README.md' | ||||||
|  |  | ||||||
|   spec.add_development_dependency "jekyll", ">= 4" |   spec.add_development_dependency "jekyll", ">= 4" | ||||||
|   spec.add_development_dependency "bundler", ">= 1.12" |   spec.add_development_dependency "bundler", ">= 2.1.4" | ||||||
| end | end | ||||||
|  | |||||||
							
								
								
									
										1
									
								
								requirements.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								requirements.txt
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | |||||||
|  | ansible==2.9.6 | ||||||
							
								
								
									
										15
									
								
								sbin/encrypt.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										15
									
								
								sbin/encrypt.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,15 @@ | |||||||
|  | #!/bin/bash | ||||||
|  |  | ||||||
|  | set -eu -o pipefail | ||||||
|  |  | ||||||
|  | # Usage | ||||||
|  | # ./encrypt.sh mysecretname mysecretvalue | ||||||
|  |  | ||||||
|  | declare name="$1" | ||||||
|  | declare secret="$2" | ||||||
|  |  | ||||||
|  | ansible-vault \ | ||||||
|  |   encrypt_string \ | ||||||
|  |   --vault-password-file ansible/.vault.sh \ | ||||||
|  |   --name "$name" \ | ||||||
|  |   "$secret" | ||||||
							
								
								
									
										24
									
								
								sbin/entrypoint.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										24
									
								
								sbin/entrypoint.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,24 @@ | |||||||
|  | #!/bin/bash | ||||||
|  |  | ||||||
|  | set -eu -o pipefail | ||||||
|  |  | ||||||
|  | # Fire up Jekyll with the right configuration | ||||||
|  | run_jekyll() { | ||||||
|  |   set -eu | ||||||
|  |  | ||||||
|  |   bundle exec jekyll serve \ | ||||||
|  |     --config "$JEKYLL_CONFIG" \ | ||||||
|  |     --host "$JEKYLL_HOST" \ | ||||||
|  |     --port "$JEKYLL_PORT" \ | ||||||
|  |     --trace \ | ||||||
|  |     --verbose | ||||||
|  | } | ||||||
|  |  | ||||||
|  | # Main entrypoint | ||||||
|  | main() { | ||||||
|  |   set -eu | ||||||
|  |  | ||||||
|  |   run_jekyll | ||||||
|  | } | ||||||
|  |  | ||||||
|  | main | ||||||
| @ -4,9 +4,10 @@ | |||||||
|     <div class="column"> |     <div class="column"> | ||||||
|       <a class="named-anchor" name="contact"></a> |       <a class="named-anchor" name="contact"></a> | ||||||
|         <h3>Get in Touch</h3> |         <h3>Get in Touch</h3> | ||||||
|         Contact us to discuss your project's needs and arrange a consultation. |         Contact us to discuss your project's needs and arrange a consultation:</br> | ||||||
|         <a href="mailto:helo@autonomic.zone">helo@autonomic.zone</a></br> |         <b><a href="mailto:helo@autonomic.zone">helo@autonomic.zone</a></b></br></br> | ||||||
|         <a href="{{ '/assets/pgp/autonomic-key.asc' | relative_url }}">PGP key</a><code id="fingerprint">82FC 87C5 1A71 902F DC10 2CF5 4F90 D55B B24B 1147</code> |         <b><a href="{{ '/assets/pgp/autonomic-key.asc' | relative_url }}">Download PGP key</a></b></br> | ||||||
|  |         <a href= "https://git.autonomic.zone/autonomic-cooperative/autonomic.zone/src/branch/master/src/assets/pgp"> Verify fingerprint:</a><code id="fingerprint">82FC 87C5 1A71 902F DC10 2CF5 4F90 D55B B24B 1147</code> | ||||||
|  |  | ||||||
|       <ul class="icons" style="margin-bottom: 0; padding-top: 1em"> |       <ul class="icons" style="margin-bottom: 0; padding-top: 1em"> | ||||||
|         <li> |         <li> | ||||||
| @ -24,24 +25,23 @@ | |||||||
|     </div> |     </div> | ||||||
|     <div class="column"> |     <div class="column"> | ||||||
|       <div class="copyright"> |       <div class="copyright"> | ||||||
|         <object style="height: 1.2rem; vertical-align: text-bottom;" type="image/svg+xml" data="{{ '/assets/svg/creative-commons-brands.svg' | absolute_url }}"> |  | ||||||
|           Your browser does not support SVG |  | ||||||
|         </object>  |  | ||||||
|         {{ site.title }} |  | ||||||
|       </div> |       </div> | ||||||
|       <div class="cotech-box"> |       <div class="cotech-box"> | ||||||
|         <a href="https://www.coops.tech/"> |         <a href="https://www.coops.tech/"> | ||||||
|           <img class="cotech-logo" src="{{ '/assets/images/CoTech-white-logo.png' | relative_url }}" alt="CoTech"/> |           <img class="cotech-logo" src="{{ '/assets/images/CoTech-white-logo.png' | relative_url }}" alt="CoTech"/> | ||||||
|           <span class="cotech-text">Member of Cotech</span> |           <b><span class="cotech-text">Member of the Cotech Network</span></b> | ||||||
|         </a> |         </a> | ||||||
|       </div> |       </div> | ||||||
|       <div style="vertical-align: bottom;"> |       <div style="vertical-align: bottom;"> | ||||||
|         <address> |         <address> | ||||||
|           Autonomic Co-operative</br> |           Autonomic Co-operative Limited</br> | ||||||
|           1539 Pershore Road</br> |           1539 Pershore Road</br> | ||||||
|           Stirchley</br> |           Birmingham</br> | ||||||
|           B30 2JH |           B30 2JH</br> | ||||||
|         </address> |           United Kingdom</br> | ||||||
|  |         </address></br> | ||||||
|  |           We are a Co-operative Society registered with the <a href="https://mutuals.fca.org.uk/Search/Society/30380">FCA</a>.  | ||||||
|  |           <b>Registration Number: 4597 </b> | ||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
|   </div> |   </div> | ||||||
|  | |||||||
| @ -2,10 +2,11 @@ | |||||||
| <section id="three" class="wrapper style6 special"> | <section id="three" class="wrapper style6 special"> | ||||||
|   <div class="inner"> |   <div class="inner"> | ||||||
|     <header class="major"> |     <header class="major"> | ||||||
|       <h2>Cooperative Cloud: For Organisations</h2> |       <h2>Cooperative Cloud Infrastructure</h2> | ||||||
|       <p> |       <p> | ||||||
|         This isn't an exhaustive list - if you don't see what you need, please contact us anyway. |         This isn't an exhaustive list. If you don't see what you need, please contact us anyway for a consultation: | ||||||
|       </p> |       </p> | ||||||
|  |       <h3><a href="mailto:helo@autonomic.zone">helo@autonomic.zone</a></h3> | ||||||
|     </header> |     </header> | ||||||
|     <ul class="features"> |     <ul class="features"> | ||||||
|       <li class="features-item"> |       <li class="features-item"> | ||||||
|  | |||||||
							
								
								
									
										24
									
								
								src/_posts/2020-04-02-autonomic-pandemic.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								src/_posts/2020-04-02-autonomic-pandemic.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,24 @@ | |||||||
|  | --- | ||||||
|  | layout: post | ||||||
|  | title: Autonomic in times of pandemic | ||||||
|  | description: Life under lockdown | ||||||
|  | image: 2020-04-02_autonomic_garden.jpg | ||||||
|  | category: updates | ||||||
|  | date: 2020-04-02 | ||||||
|  | --- | ||||||
|  |  | ||||||
|  |  | ||||||
|  | # Autonomic in times of pandemic | ||||||
|  |  | ||||||
|  | Just though we'd let everyone know that we are all doing ok during these extraordinary times. Autonomic already carries out all our work remotely so we don't have to change the way we work at all. Business as normal for us in the work realm but we know this isn't the case for many.  | ||||||
|  |  | ||||||
|  | Most of us are involved in local mutual aid projects and we really recommend for everyone is able to get involved in their area (UK lists [here](https://covidmutualaid.org/local-groups/) and [here](https://freedomnews.org.uk/covid-19-uk-mutual-aid-groups-a-list/)). We need to stick together now more than ever. This is especially important for all those with tech skills. We have to help our communities. Tech help will be so appreciated by your local communities and help others to support those in need. | ||||||
|  |  | ||||||
|  | We are also concerned at the rising use of potentially authoritarian surveillance technologies. It is inevitable that under current conditions we would see these technologies deployed in a civil rather than military context. A moment of crisis is the perfect opportunity for those that seek to erode our civil liberties. As hackers, it is our responsibility to fight against repressive technologies wherever we find them for the sake of those less technical than ourselves.  | ||||||
|  |  | ||||||
|  | If you are an organisation or collective that needs help with tech infrastructure, please reach out and we will help to the best of our abilities. This is a time for building cooperation, mutual aid and democratic structures, not only for the duration of the current crisis but also for struggles to come. There is no time to waste. | ||||||
|  |  | ||||||
|  | Love and solidarity | ||||||
|  |  | ||||||
|  | *Autonomic Co-operative* | ||||||
|  |  | ||||||
							
								
								
									
										
											BIN
										
									
								
								src/assets/images/2020-04-02_autonomic_garden.jpg
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								src/assets/images/2020-04-02_autonomic_garden.jpg
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 917 KiB | 
		Reference in New Issue
	
	Block a user
	