Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .coafile
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,7 @@ files = **/Dockerfile

[all.ini]
files = **.ini

[all.jinja2]
bears = Jinja2Bear
files = **.jj2
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
.secrets
*.tmplc
rultor_github_secrets.sh
.moban.hashes
20 changes: 20 additions & 0 deletions .moban.dt/coala.io.conf.jj2
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{% from "url_builder.jj2" import get_url %}
server {
listen 443 ssl;
server_name coala.io www.coala.io;

location / {
proxy_pass http://192.30.252.153;
proxy_set_header Host coala.io;
proxy_set_header X-Real-IP $remote_addr;
proxy_intercept_errors on;
}

location /links {
root /usr/share/nginx/html;
}

{% for sl in shortlinks %}
location /{{ "%-10s" % sl.name }} { return 301 https://{{ get_url(sl) }}; }
{% endfor %}{# for sl in shortlinks #}
}
35 changes: 35 additions & 0 deletions .moban.dt/links.html.jj2
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{% from "url_builder.jj2" import get_url %}

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>coala Shortlinks</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta property="og:title" content="coala Shortlinks">
<meta property="og:description" content="List of shortlinks used under coala.io">
<link rel="stylesheet" href="main.css">
</head>
<body>
<div>
<a href="https://coala.io">
<img class="logo" src="https://api.coala.io/en/latest/_static/images/coala_logo.svg" alt="coala">
</a>
<h1>coala Shortlinks</h1>
</div>
<div>
<table>
<tr>
<th>Shortlink</th>
<th>Target</th>
</tr>
{% for sl in shortlinks %}
<tr>
<td><a href="https://coala.io/{{ sl.name }}">{{ sl.name }}</a></td>
<td><a href="https://{{ get_url(sl) }}">{{ get_url(sl) }}</a></td>
</tr>
{% endfor %}{# for sl in shortlinks #}
</ul>
</div>
</body>
</html>
62 changes: 62 additions & 0 deletions .moban.dt/url_builder.jj2
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
{% macro api_doc(doc) -%}
api.coala.io/en/latest/{{ doc }}.html
{%- endmacro %}

{% macro user_doc(doc) -%}
docs.coala.io/en/latest/{{ doc }}.html
{%- endmacro %}

{% macro github_file(org, repo, file, branch="master") -%}
github.com/{{ org }}/{{ repo }}/blob/{{ branch }}/{{ file }}
{%- endmacro %}

{% macro cEP(n) -%}
{{ github_file("coala", "cEPs", "cEP-%04d.md" % n) }}
{%- endmacro %}

{% macro gform(id) -%}
docs.google.com/forms/d/e/{{ id }}/viewform
{%- endmacro %}

{% macro gpresentation(id) -%}
docs.google.com/presentation/d/{{ id }}/edit
{%- endmacro %}

{% macro github_issues(q) -%}
github.com/issues?q={{ q | urlencode }}
{%- endmacro %}

{% macro github_pulls(q) -%}
github.com/pulls?q={{ q | urlencode }}
{%- endmacro %}

{% macro github_wiki(org, repo, page) -%}
github.com/{{ org }}/{{ repo }}/wiki/{{ page }}
{%- endmacro %}

{% macro wiki(page) -%}
{{ github_wiki("coala", "repo", page) }}
{%- endmacro %}

{% macro get_url(sl) %}
{# Ignore Jinja2Bear - false alarm #}
{% if sl.api_doc is defined -%}
{{ api_doc(sl.api_doc) }}
{%- elif sl.user_doc is defined -%}
{{ user_doc(sl.user_doc) }}
{%- elif sl.cEP is defined -%}
{{ cEP(sl.cEP) }}
{%- elif sl.gform is defined -%}
{{ gform(sl.gform) }}
{%- elif sl.gpresentation is defined -%}
{{ gpresentation(sl.gpresentation) }}
{%- elif sl.github_issues is defined -%}
{{ github_issues(sl.github_issues) }}
{%- elif sl.github_pulls is defined -%}
{{ github_pulls(sl.github_pulls) }}
{%- elif sl.wiki is defined -%}
{{ wiki(sl.wiki) }}
{%- else -%}
{{ sl.url }}
{%- endif %}
{% endmacro %}
9 changes: 9 additions & 0 deletions .moban.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
configuration:
template_dir:
- .moban.dt/
- ../coala-mobans/templates/
configuration: devops.yml
configuration_dir: ../coala-mobans/
targets:
- nginx/nginx.conf.d/coala.io.conf: coala.io.conf.jj2
- nginx/webroot/links/index.html: links.html.jj2
116 changes: 116 additions & 0 deletions devops.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
shortlinks:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file should go into coala-mobans , as shortlinks.yml

Then in .moban.yml , add configuration-dir: ../coala-mobans/ like the others.

An immediate use of it in another repo is validating links in the docs .

Copy link
Member Author

@yukiisbored yukiisbored Dec 20, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems coala/coala-mobans still doesn't exist and currently resides under your namespace.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am still waiting for reviews. Once it is approved, I will move it and update my PRs and then they can be merged.

- name: newcomer
api_doc: Developers/Newcomers_Guide
- name: newcomers
api_doc: Developers/Newcomers_Guide
- name: new
github_issues: "is:open is:issue user:coala label:difficulty/newcomer\
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ewww.

Copy link
Member

@jayvdb jayvdb Dec 20, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

github_issues:
  - is:open
  - is:issue
  - user:coala
  - label:difficulty/newcomer
  - "-label:initiatives/gci"
  - no:assignee

-label:initiatives/gci no:assignee"
- name: low
github_issues: "is:open is:issue user:coala label:difficulty/low \
no:assignee"
- name: medium
github_issues: "is:open is:issue user:coala label:difficulty/medium \
no:assignee"
- name: review
github_pulls: "is:open user:coala label:process/pending review \
sort:created-asc"
- name: greview
url: gitlab.com/groups/coala/merge_requests
- name: approved
github_pulls: "is:open user:coala label:process/approved \
sort:created-asc"
- name: reviewing
api_doc: Developers/Review
- name: languages
url: coala.io/#!/languages
- name: chat
url: gitter.im/coala-analyzer/coala
- name: git
api_doc: Developers/Git_Basics
- name: rebase
url: coala.io/git#rebasing
- name: commit
api_doc: Developers/Writing_Good_Commits
- name: cep
cEP: 0
- name: cep1
cEP: 1
- name: cep2
cEP: 2
- name: cep3
cEP: 3
- name: cep5
cEP: 5
- name: cep6
cEP: 6
- name: cep9
cEP: 9
- name: cep10
cEP: 10
- name: cep12
cEP: 12
- name: cep14
cEP: 14
- name: coc
cEP: 6
- name: tutorial
user_doc: Users/Tutorial
- name: writingbears
api_doc: Developers/Writing_Native_Bears
- name: channels
wiki: Communication-Channels
- name: newform
gform: 1FAIpQLSd7g_MU_c-BMQ62WHeznrvcoXwqW87O_Wq4Gz7-pp8PJ38Wdg
- name: projects
wiki: Project-Ideas
- name: reviewsprint
gform: 1FAIpQLSd4vHafTyY4RW--fOyIVecBM0WKNEeF-RyFvUn83jCF9ou2tg
- name: reply
wiki: Reply-Templates
- name: linespots
url: gitlab.com/sims1253/Linespots
- name: usability
gform: 1FAIpQLSe9lZxuYEKlvxXzQUOTwrre3CQMNsks7eOzEl49_2q5vlDl0w
- name: starwars
url: www.youtube.com/watch?v=JWVCMjKU_10
- name: docs
url: docs.coala.io
- name: api
url: api.coala.io
- name: viperform
gform: 1FAIpQLSdtdIF5CLnO2erAc41yLRoEvUMXyt3ZWUOVJ5LSqpwZEYF03A
- name: romania
url: "www.bigmarker.com/remote-meetup/Open-Source-and-Google-Summer-of-Code\
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no protocol?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's on the nginx template.

-8-Gorgeous-Short-Presentations"
- name: thesis
wiki: Writing-a-Thesis-with-coala
- name: install
user_doc: Users/Install
- name: comania
wiki: Hackathon-comania
- name: pizza
gform: 1FAIpQLSdt_zc_bgAE6vqTypSBnWk240AEnhCE7NBmpU1nLnFBuaivqA
- name: help
api_doc: Developers/coala_settings
- name: devsetup
api_doc: Developers/Development_Setup
- name: community_issues
github_pulls: "is:open user:coala label:community_team sort:created-asc"
- name: fosdem2017
url: "http://coala.us15.list-manage1.com/subscribe?u=f37f470f0755466918fbde\
30b&id=71567f2923"
- name: gitmate
url: coala.io/#/gitmate
- name: csoc
gform: 1FAIpQLSeR8WKkZA1R0gBDjJqfeI96jgHe9mt8zmAVm1YtB5FpJFD9gQ
- name: recipes
url: github.com/coala/recipes
- name: autocontrib
gpresentation: 1fYx1aiSSj_w1vw017tBYfSGbfgl38sMWg3qlhvimYu8
- name: exterminate
url: github.com/adtac/exterminate
- name: exterminatep
gpresentation: 1qJpXMgA8_WJNO3eUV_ueNiU8w_1fTethNvEuU2XHnWs
- name: feedback
gform: 1FAIpQLSePFIE5-Mfk-ER307rdcAmBHZpKNRgOSeq-rmjY-09pEn3TsA
123 changes: 58 additions & 65 deletions nginx/nginx.conf.d/coala.io.conf
Original file line number Diff line number Diff line change
@@ -1,77 +1,70 @@
server {
listen 443 ssl;
server_name coala.io www.coala.io;

location / {
proxy_pass http://192.30.252.153;
proxy_set_header Host coala.io;
proxy_set_header X-Real-IP $remote_addr;
proxy_intercept_errors on;
}

# URL shortener
location /newcomer { return 302 http://api.coala.io/en/latest/Developers/Newcomers_Guide.html; }
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nginx doesnt support redirects without a protocol?

if not, can you add a PR first to replace http->https or https->http , so then this diff has only minimal changes.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's not that nginx doesn't support it. It just throws HTTP 302 with whatever after it. Some programs get confused when there's no protocol.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I'll just make some changes to the coala.io.conf so this diff will be lower.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This hasnt been done , it appears

location /newcomers { return 302 http://api.coala.io/en/latest/Developers/Newcomers_Guide.html; }
location /new { return 302 https://github.com/issues?utf8=%E2%9C%93&q=is%3Aopen+is%3Aissue+user%3Acoala+label%3Adifficulty%2Fnewcomer+-label%3Ainitiatives%2Fgci+no%3Aassignee; }
location /low { return 302 https://github.com/issues?utf8=%E2%9C%93&q=is%3Aopen+is%3Aissue+user%3Acoala+label%3Adifficulty%2Flow++no%3Aassignee; }
location /medium { return 302 https://github.com/issues?utf8=%E2%9C%93&q=is%3Aopen+is%3Aissue+user%3Acoala+label%3Adifficulty%2Fmedium+no%3Aassignee; }
location /review { return 302 https://github.com/pulls?q=is%3Aopen+user%3Acoala+label%3A%22process%2Fpending+review%22+sort%3Acreated-asc; }
location /greview { return 302 https://gitlab.com/groups/coala/merge_requests; }
location /approved { return 302 https://github.com/pulls?q=is%3Aopen+user%3Acoala+label%3A%22process%2Fapproved%22+sort%3Acreated-asc; }
location /reviewing { return 302 http://api.coala.io/en/latest/Developers/Review.html; }
location /languages { return 302 http://coala.io/#!/languages; }
location /chat { return 302 https://gitter.im/coala-analyzer/coala; }
location /git { return 302 http://api.coala.io/en/latest/Developers/Git_Basics.html; }
location /rebase { return 302 https://coala.io/git#rebasing; }
location /commit { return 302 http://api.coala.io/en/latest/Developers/Writing_Good_Commits.html; }
location /cep { return 302 https://github.com/coala/cEPs/blob/master/cEP-0000.md; }
location /cep1 { return 302 https://github.com/coala/cEPs/blob/master/cEP-0001.md; }
location /cep2 { return 302 https://github.com/coala/cEPs/blob/master/cEP-0002.md; }
location /cep3 { return 302 https://github.com/coala/cEPs/blob/master/cEP-0003.md; }
location /cep5 { return 302 https://github.com/coala/cEPs/blob/master/cEP-0005.md; }
location /cep6 { return 302 https://github.com/coala/cEPs/blob/master/cEP-0006.md; }
location /cep9 { return 302 https://github.com/coala/cEPs/blob/master/cEP-0009.md; }
location /cep10 { return 302 https://github.com/coala/cEPs/blob/master/cEP-0010.md; }
location /cep12 { return 302 https://github.com/coala/cEPs/blob/master/cEP-0012.md; }
location /cep13 { return 302 https://github.com/coala/cEPs/blob/master/cEP-0013.md; }
location /cep14 { return 302 https://github.com/coala/cEPs/blob/master/cEP-0014.md; }
location /coc { return 302 https://github.com/coala/cEPs/blob/master/cEP-0006.md; }
location /tutorial { return 302 https://docs.coala.io/en/latest/Users/Tutorial.html; }
location /writingbears { return 302 https://api.coala.io/en/latest/Developers/Writing_Native_Bears.html; }
location /channels { return 302 https://github.com/coala/coala/wiki/Communication-Channels; }
location /newform { return 302 https://docs.google.com/forms/d/e/1FAIpQLSd7g_MU_c-BMQ62WHeznrvcoXwqW87O_Wq4Gz7-pp8PJ38Wdg/viewform; }
location /projects { return 302 https://github.com/coala/coala/wiki/Project-Ideas; }
location /reviewsprint { return 302 https://docs.google.com/forms/d/e/1FAIpQLSd4vHafTyY4RW--fOyIVecBM0WKNEeF-RyFvUn83jCF9ou2tg/viewform; }
location /reply { return 302 https://github.com/coala/coala/wiki/Reply-Templates; }
location /linespots { return 302 https://gitlab.com/sims1253/Linespots; }
location /usability { return 302 https://docs.google.com/forms/d/e/1FAIpQLSe9lZxuYEKlvxXzQUOTwrre3CQMNsks7eOzEl49_2q5vlDl0w/viewform; }
location /starwars { return 302 https://www.youtube.com/watch?v=JWVCMjKU_10; }
location /docs { return 302 https://docs.coala.io/; }
location /api { return 302 https://api.coala.io/; }
location /viperform { return 302 https://docs.google.com/forms/d/e/1FAIpQLSdtdIF5CLnO2erAc41yLRoEvUMXyt3ZWUOVJ5LSqpwZEYF03A/viewform; }
location /romania { return 302 https://www.bigmarker.com/remote-meetup/Open-Source-and-Google-Summer-of-Code-8-Gorgeous-Short-Presentations; }
location /thesis { return 302 https://github.com/coala/coala/wiki/Writing-a-Thesis-with-coala; }
location /install { return 302 http://docs.coala.io/en/latest/Users/Install.html; }
location /comania { return 302 https://github.com/coala/coala/wiki/Hackathon-comania; }
location /pizza { return 302 https://docs.google.com/forms/d/e/1FAIpQLSdt_zc_bgAE6vqTypSBnWk240AEnhCE7NBmpU1nLnFBuaivqA/viewform; }
location /help { return 302 http://api.coala.io/en/latest/Developers/coala_settings.html; }
location /devsetup { return 302 https://api.coala.io/en/latest/Developers/Development_Setup.html; }
location /community_issues { return 302 https://github.com/pulls?q=is:open+user:coala+label:"community_team"+sort:created-asc; }
location /fosdem2017 { return 302 http://eepurl.com/cABthT; }
location /gitmate { return 302 https://coala.io/#/gitmate; }
location /nginx.txt { return 302 coala.io.conf; }
location /links { return 302 coala.io.conf; }
location /csoc { return 302 https://docs.google.com/forms/d/e/1FAIpQLSeR8WKkZA1R0gBDjJqfeI96jgHe9mt8zmAVm1YtB5FpJFD9gQ/viewform?usp=sf_link; }
location /recipes { return 302 https://github.com/coala/recipes; }

location /autocontrib { return 302 https://docs.google.com/presentation/d/1fYx1aiSSj_w1vw017tBYfSGbfgl38sMWg3qlhvimYu8/edit?usp=sharing; }
location /exterminate { return 302 https://github.com/adtac/exterminate/; }
location /exterminatep { return 302 https://docs.google.com/presentation/d/1qJpXMgA8_WJNO3eUV_ueNiU8w_1fTethNvEuU2XHnWs/edit?usp=sharing; }

location /feedback { return 302 https://goo.gl/DcTPbn; }

location /coala.io.conf {
add_header Content-Type text/plain;
root /etc/nginx/conf.d;
location /links {
root /usr/share/nginx/html;
}

location /newcomer { return 301 https://api.coala.io/en/latest/Developers/Newcomers_Guide.html; }
location /newcomers { return 301 https://api.coala.io/en/latest/Developers/Newcomers_Guide.html; }
location /new { return 301 https://github.com/issues?q=is%3Aopen%20is%3Aissue%20user%3Acoala%20label%3Adifficulty/newcomer-label%3Ainitiatives/gci%20no%3Aassignee; }
location /low { return 301 https://github.com/issues?q=is%3Aopen%20is%3Aissue%20user%3Acoala%20label%3Adifficulty/low%20no%3Aassignee; }
location /medium { return 301 https://github.com/issues?q=is%3Aopen%20is%3Aissue%20user%3Acoala%20label%3Adifficulty/medium%20no%3Aassignee; }
location /review { return 301 https://github.com/pulls?q=is%3Aopen%20user%3Acoala%20label%3Aprocess/pending%20review%20sort%3Acreated-asc; }
location /greview { return 301 https://gitlab.com/groups/coala/merge_requests; }
location /approved { return 301 https://github.com/pulls?q=is%3Aopen%20user%3Acoala%20label%3Aprocess/approved%20sort%3Acreated-asc; }
location /reviewing { return 301 https://api.coala.io/en/latest/Developers/Review.html; }
location /languages { return 301 https://coala.io/#!/languages; }
location /chat { return 301 https://gitter.im/coala-analyzer/coala; }
location /git { return 301 https://api.coala.io/en/latest/Developers/Git_Basics.html; }
location /rebase { return 301 https://coala.io/git#rebasing; }
location /commit { return 301 https://api.coala.io/en/latest/Developers/Writing_Good_Commits.html; }
location /cep { return 301 https://github.com/coala/cEPs/blob/master/cEP-0000.md; }
location /cep1 { return 301 https://github.com/coala/cEPs/blob/master/cEP-0001.md; }
location /cep2 { return 301 https://github.com/coala/cEPs/blob/master/cEP-0002.md; }
location /cep3 { return 301 https://github.com/coala/cEPs/blob/master/cEP-0003.md; }
location /cep5 { return 301 https://github.com/coala/cEPs/blob/master/cEP-0005.md; }
location /cep6 { return 301 https://github.com/coala/cEPs/blob/master/cEP-0006.md; }
location /cep9 { return 301 https://github.com/coala/cEPs/blob/master/cEP-0009.md; }
location /cep10 { return 301 https://github.com/coala/cEPs/blob/master/cEP-0010.md; }
location /cep12 { return 301 https://github.com/coala/cEPs/blob/master/cEP-0012.md; }
location /cep14 { return 301 https://github.com/coala/cEPs/blob/master/cEP-0014.md; }
location /coc { return 301 https://github.com/coala/cEPs/blob/master/cEP-0006.md; }
location /tutorial { return 301 https://docs.coala.io/en/latest/Users/Tutorial.html; }
location /writingbears { return 301 https://api.coala.io/en/latest/Developers/Writing_Native_Bears.html; }
location /channels { return 301 https://github.com/coala/repo/wiki/Communication-Channels; }
location /newform { return 301 https://docs.google.com/forms/d/e/1FAIpQLSd7g_MU_c-BMQ62WHeznrvcoXwqW87O_Wq4Gz7-pp8PJ38Wdg/viewform; }
location /projects { return 301 https://github.com/coala/repo/wiki/Project-Ideas; }
location /reviewsprint { return 301 https://docs.google.com/forms/d/e/1FAIpQLSd4vHafTyY4RW--fOyIVecBM0WKNEeF-RyFvUn83jCF9ou2tg/viewform; }
location /reply { return 301 https://github.com/coala/repo/wiki/Reply-Templates; }
location /linespots { return 301 https://gitlab.com/sims1253/Linespots; }
location /usability { return 301 https://docs.google.com/forms/d/e/1FAIpQLSe9lZxuYEKlvxXzQUOTwrre3CQMNsks7eOzEl49_2q5vlDl0w/viewform; }
location /starwars { return 301 https://www.youtube.com/watch?v=JWVCMjKU_10; }
location /docs { return 301 https://docs.coala.io; }
location /api { return 301 https://api.coala.io; }
location /viperform { return 301 https://docs.google.com/forms/d/e/1FAIpQLSdtdIF5CLnO2erAc41yLRoEvUMXyt3ZWUOVJ5LSqpwZEYF03A/viewform; }
location /romania { return 301 https://www.bigmarker.com/remote-meetup/Open-Source-and-Google-Summer-of-Code-8-Gorgeous-Short-Presentations; }
location /thesis { return 301 https://github.com/coala/repo/wiki/Writing-a-Thesis-with-coala; }
location /install { return 301 https://docs.coala.io/en/latest/Users/Install.html; }
location /comania { return 301 https://github.com/coala/repo/wiki/Hackathon-comania; }
location /pizza { return 301 https://docs.google.com/forms/d/e/1FAIpQLSdt_zc_bgAE6vqTypSBnWk240AEnhCE7NBmpU1nLnFBuaivqA/viewform; }
location /help { return 301 https://api.coala.io/en/latest/Developers/coala_settings.html; }
location /devsetup { return 301 https://api.coala.io/en/latest/Developers/Development_Setup.html; }
location /community_issues { return 301 https://github.com/pulls?q=is%3Aopen%20user%3Acoala%20label%3Acommunity_team%20sort%3Acreated-asc; }
location /fosdem2017 { return 301 https://http://coala.us15.list-manage1.com/subscribe?u=f37f470f0755466918fbde30b&id=71567f2923; }
location /gitmate { return 301 https://coala.io/#/gitmate; }
location /csoc { return 301 https://docs.google.com/forms/d/e/1FAIpQLSeR8WKkZA1R0gBDjJqfeI96jgHe9mt8zmAVm1YtB5FpJFD9gQ/viewform; }
location /recipes { return 301 https://github.com/coala/recipes; }
location /autocontrib { return 301 https://docs.google.com/presentation/d/1fYx1aiSSj_w1vw017tBYfSGbfgl38sMWg3qlhvimYu8/edit; }
location /exterminate { return 301 https://github.com/adtac/exterminate; }
location /exterminatep { return 301 https://docs.google.com/presentation/d/1qJpXMgA8_WJNO3eUV_ueNiU8w_1fTethNvEuU2XHnWs/edit; }
location /feedback { return 301 https://docs.google.com/forms/d/e/1FAIpQLSePFIE5-Mfk-ER307rdcAmBHZpKNRgOSeq-rmjY-09pEn3TsA/viewform; }
}
Loading