Add analytics beacons to hugo and readthedocs (#917)

* Test integrating cloudflare analytics with readthedocs

* Harmonize tensorflow and keras versions

* Move beacon to the layout footer

* Add write permissions when opening the layout to patch beacon token

* Add cloudflare beacon to hugo website

* Test token injection during website build action

* WIP fix actions syntax

* Pass beacon token as env variable

* WIP debug variables in runner env

* Fix quotes for sed to work

* Clean up dev artifacts from gh-pages action
This commit is contained in:
Theodore Aptekarev
2021-11-09 21:48:26 +03:00
committed by GitHub
parent e4792d0e8b
commit f661f5ff31
9 changed files with 73 additions and 33 deletions

View File

@@ -17,7 +17,11 @@ jobs:
# remove --minify tag if you do not need it
# docs: https://gohugo.io/hugo-pipes/minification/
working-directory: ./website
run: hugo
env:
BEACON_TOKEN: ${{ secrets.HUGO_ANALYTICS }}
run: |
sed -i -e "s/{{BEACON}}/$BEACON_TOKEN/g" themes/hugo-geekdoc/layouts/partials/foot.html
hugo
- name: Deploy
uses: peaceiris/actions-gh-pages@v3

2
.pylintrc vendored
View File

@@ -3,7 +3,7 @@
# A comma-separated list of package or module names from where C extensions may
# be loaded. Extensions are loading into the active Python interpreter and may
# run arbitrary code
extension-pkg-whitelist=
extension-pkg-allow-list=math,binascii
# Add files or directories to the blacklist. They should be base names, not
# paths.

11
docs/_templates/layout.html vendored Normal file
View File

@@ -0,0 +1,11 @@
{% extends '!layout.html' %}
{% block footer %}
<!-- Cloudflare Web Analytics -->
<script
defer
src='https://static.cloudflareinsights.com/beacon.min.js'
data-cf-beacon='{"token": "{{BEACON}}"}'>
</script>
<!-- End Cloudflare Web Analytics -->
{% endblock %}

View File

@@ -13,6 +13,22 @@ Subpackages
Submodules
----------
gamestonk\_terminal.forex.av\_model module
------------------------------------------
.. automodule:: gamestonk_terminal.forex.av_model
:members:
:undoc-members:
:show-inheritance:
gamestonk\_terminal.forex.av\_view module
-----------------------------------------
.. automodule:: gamestonk_terminal.forex.av_view
:members:
:undoc-members:
:show-inheritance:
gamestonk\_terminal.forex.forex\_controller module
--------------------------------------------------

View File

@@ -1,8 +1,10 @@
# Configuration file for the Sphinx documentation builder.
#
# This file only contains a selection of the most common options. For a full
# list see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
"""
Configuration file for the Sphinx documentation builder.
This file only contains a selection of the most common options. For a full
list see the documentation:
https://www.sphinx-doc.org/en/master/usage/configuration.html
"""
# -- Path setup --------------------------------------------------------------
@@ -16,11 +18,18 @@ import sys
sys.path.insert(0, os.path.abspath("."))
sys.path.insert(0, os.path.join(os.path.abspath("."), ".."))
beacon = os.environ.get("BEACON")
if beacon is not None:
with open(os.path.join(".", "_templates", "layout.html")) as f:
content = f.read()
with open(os.path.join(".", "_templates", "layout.html"), "w") as f:
f.write(content.replace("{{BEACON}}", beacon))
# -- Project information -----------------------------------------------------
project = "Gamestonk Terminal"
copyright = "2021, Gamestonk Terminal Contributors"
copyright = "2021, Gamestonk Terminal Contributors" # pylint: disable=W0622
author = "Gamestonk Terminal Contributors"

2
pyproject.toml vendored
View File

@@ -74,7 +74,7 @@ fred = "^3.1"
openpyxl = "3.0.7"
vcrpy = "^4.1.1"
coverage = "^5.5"
tensorflow = {version = "2.6.0", optional = true}
tensorflow = {version = "^2.6.0", optional = true}
jsonschema = "3.2.0"
financedatabase = "1.0.0"
reportlab = "^3.6.2"

29
requirements-full.txt vendored
View File

@@ -45,7 +45,7 @@ datetime==4.3; python_version >= "3.5"
debugpy==1.5.1; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.7"
decorator==5.1.0; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.7"
defusedxml==0.7.1; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.7"
degiro-connector==2.0.3; python_full_version >= "3.6.2"
degiro-connector==2.0.4; python_full_version >= "3.6.2"
deprecation==2.1.0
detecta==0.0.5; python_version >= "3.6"
docutils==0.16; python_full_version >= "3.6.8" and python_full_version < "4.0.0" and python_version >= "3.6" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.6")
@@ -69,7 +69,7 @@ gast==0.4.0; python_version >= "2.7" and python_full_version < "3.0.0" or python
gitdb==4.0.9; python_version >= "3.7"
gitpython==3.1.24; python_version >= "3.7"
google-auth-oauthlib==0.4.6; python_version >= "3.6"
google-auth==2.3.3; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6"
google-auth==1.35.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6"
google-pasta==0.2.0
grpcio==1.41.1; python_full_version >= "3.6.2" and python_version >= "3.6"
h5py==3.1.0; python_version >= "3.6"
@@ -94,14 +94,14 @@ jsonschema==3.2.0
jupyter-client==6.1.12; python_version >= "3.5"
jupyter-console==6.4.0; python_version >= "3.6"
jupyter-core==4.9.1; python_full_version >= "3.6.1" and python_version >= "3.7"
jupyter-server==1.11.1; python_version >= "3.6"
jupyter-server==1.11.2; python_version >= "3.6"
jupyter==1.0.0
jupyterlab-pygments==0.1.2; python_version >= "3.7"
jupyterlab-server==2.8.2; python_version >= "3.6"
jupyterlab-widgets==1.0.2; python_version >= "3.6"
jupyterlab==3.2.1; python_version >= "3.6"
jupyterlab==3.2.2; python_version >= "3.6"
keras-preprocessing==1.1.2
keras==2.7.0
keras==2.6.0
kiwisolver==1.3.2; python_version >= "3.7"
korean-lunar-calendar==0.2.1; python_version >= "3.6"
lazy-object-proxy==1.6.0; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4.0" or python_version >= "3.6" and python_version < "4.0" and python_full_version >= "3.6.0"
@@ -137,7 +137,7 @@ openpyxl==3.0.7; python_version >= "3.6"
opt-einsum==3.3.0; python_version >= "3.5"
orjson==3.6.4; python_version >= "3.7" and python_full_version >= "3.6.2"
osqp==0.6.2.post0; python_full_version >= "3.6.1" and python_full_version < "4.0.0" and python_version >= "3.6"
packaging==21.2; python_full_version >= "3.6.8" and python_full_version < "4.0.0" and python_version >= "3.7"
packaging==21.0; python_full_version >= "3.6.8" and python_full_version < "4.0.0" and python_version >= "3.7"
pandas-datareader==0.10.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6"
pandas-ta==0.2.45b
pandas==1.1.5; python_full_version >= "3.6.1"
@@ -146,7 +146,7 @@ papermill==2.3.3; python_version >= "3.6"
parso==0.8.2; python_version >= "3.7"
pathspec==0.9.0; python_full_version >= "3.6.2" and python_version >= "3.6"
patsy==0.5.2; python_version >= "3.6"
pbr==5.6.0; python_version >= "3.6"
pbr==5.7.0; python_version >= "3.6"
pexpect==4.8.0; sys_platform != "win32" and python_version >= "3.7"
pickleshare==0.7.5; python_version >= "3.7"
pillow==8.4.0; python_version >= "3.6"
@@ -158,11 +158,11 @@ praw==7.4.0; python_version >= "3.6" and python_version < "4.0"
prawcore==2.3.0; python_version >= "3.6" and python_version < "4.0"
prettytable==2.4.0; python_version >= "3.6"
prometheus-client==0.12.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6"
prompt-toolkit==3.0.21; python_full_version >= "3.6.2"
prompt-toolkit==3.0.22; python_full_version >= "3.6.2"
protobuf==3.19.1; python_version >= "3.6" and python_full_version >= "3.6.2"
psaw==0.0.12; python_version >= "3"
ptyprocess==0.7.0; os_name != "nt" and python_version >= "3.7" and sys_platform != "win32"
py==1.10.0; python_version >= "3.6" and python_full_version < "3.0.0" and implementation_name == "pypy" or python_full_version >= "3.4.0" and python_version >= "3.6" and implementation_name == "pypy"
py==1.11.0; python_version >= "3.6" and python_full_version < "3.0.0" and implementation_name == "pypy" or python_full_version >= "3.5.0" and python_version >= "3.6" and implementation_name == "pypy"
pyally==1.1.2
pyasn1-modules==0.2.8; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6"
pyasn1==0.4.8; python_version >= "3.6" and python_full_version < "3.0.0" and python_version < "4" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6") or python_full_version >= "3.6.0" and python_version >= "3.6" and python_version < "4" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6")
@@ -177,7 +177,7 @@ pymeeus==0.5.11; python_version >= "3.6"
pyobjc-core==7.3; python_version >= "3.6" and sys_platform == "darwin"
pyobjc-framework-cocoa==7.3; python_version >= "3.6" and sys_platform == "darwin"
pyotp==2.6.0; python_version >= "3"
pyparsing==2.4.7; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.7"
pyparsing==3.0.4; python_version >= "3.7"
pyportfolioopt==1.5.1; python_full_version >= "3.6.1" and python_full_version < "4.0.0"
pyprind==2.11.3; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0"
pyrsistent==0.14.11
@@ -190,7 +190,7 @@ pytrends==4.7.3
pytz-deprecation-shim==0.1.0.post0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6"
pytz==2021.3; python_full_version >= "3.6.8" and python_version >= "3.6" and python_full_version < "4.0.0"
pyupgrade==2.18.2; python_full_version >= "3.6.1"
pywin32==301; sys_platform == "win32" and platform_python_implementation != "PyPy" and python_version >= "3.6"
pywin32==302; sys_platform == "win32" and platform_python_implementation != "PyPy" and python_version >= "3.6"
pywinpty==1.1.5; os_name == "nt" and python_version >= "3.6"
pyyaml==6.0; python_version >= "3.6"
pyzmq==22.3.0; python_full_version >= "3.6.1" and python_version >= "3.6"
@@ -202,7 +202,6 @@ rapidfuzz==1.8.2; python_version >= "2.7"
regex==2020.11.13
reportlab==3.6.2; python_version >= "3.6" and python_version < "4"
requests-oauthlib==1.3.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6"
requests-unixsocket==0.2.0; python_version >= "3.6"
requests==2.26.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.6.0")
retrying==1.3.3
robin-stocks==2.1.0; python_version >= "3"
@@ -238,9 +237,9 @@ temporal-cache==0.1.4
tenacity==8.0.1; python_version >= "3.6"
tensorboard-data-server==0.6.1; python_version >= "3.6"
tensorboard-plugin-wit==1.8.0; python_version >= "3.6"
tensorboard==2.7.0; python_version >= "3.6"
tensorflow-estimator==2.7.0
tensorflow==2.6.0
tensorboard==2.6.0; python_version >= "3.6"
tensorflow-estimator==2.6.0
tensorflow==2.6.2
termcolor==1.1.0
terminado==0.12.1; python_version >= "3.6"
testpath==0.5.0; python_version >= "3.7"

17
requirements.txt vendored
View File

@@ -36,7 +36,7 @@ datetime==4.3; python_version >= "3.5"
debugpy==1.5.1; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.7"
decorator==5.1.0; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.7"
defusedxml==0.7.1; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.5.0" and python_version >= "3.7"
degiro-connector==2.0.3; python_full_version >= "3.6.2"
degiro-connector==2.0.4; python_full_version >= "3.6.2"
deprecation==2.1.0
detecta==0.0.5; python_version >= "3.6"
docutils==0.16; python_full_version >= "3.6.8" and python_full_version < "4.0.0" and python_version >= "3.6"
@@ -76,12 +76,12 @@ jsonschema==3.2.0
jupyter-client==6.1.12; python_version >= "3.5"
jupyter-console==6.4.0; python_version >= "3.6"
jupyter-core==4.9.1; python_full_version >= "3.6.1" and python_version >= "3.7"
jupyter-server==1.11.1; python_version >= "3.6"
jupyter-server==1.11.2; python_version >= "3.6"
jupyter==1.0.0
jupyterlab-pygments==0.1.2; python_version >= "3.7"
jupyterlab-server==2.8.2; python_version >= "3.6"
jupyterlab-widgets==1.0.2; python_version >= "3.6"
jupyterlab==3.2.1; python_version >= "3.6"
jupyterlab==3.2.2; python_version >= "3.6"
kiwisolver==1.3.2; python_version >= "3.7"
korean-lunar-calendar==0.2.1; python_version >= "3.6"
lxml==4.6.4; python_full_version >= "3.6.8" and python_version >= "3.5" and python_full_version < "4.0.0" and (python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6")
@@ -109,7 +109,7 @@ onetimepass==1.0.1; python_full_version >= "3.6.2"
openpyxl==3.0.7; python_version >= "3.6"
orjson==3.6.4; python_version >= "3.7" and python_full_version >= "3.6.2"
osqp==0.6.2.post0; python_full_version >= "3.6.1" and python_full_version < "4.0.0" and python_version >= "3.6"
packaging==21.2; python_full_version >= "3.6.8" and python_full_version < "4.0.0" and python_version >= "3.7"
packaging==21.0; python_full_version >= "3.6.8" and python_full_version < "4.0.0" and python_version >= "3.7"
pandas-datareader==0.10.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6"
pandas-ta==0.2.45b
pandas==1.1.5; python_full_version >= "3.6.1"
@@ -127,11 +127,11 @@ praw==7.4.0; python_version >= "3.6" and python_version < "4.0"
prawcore==2.3.0; python_version >= "3.6" and python_version < "4.0"
prettytable==2.4.0; python_version >= "3.6"
prometheus-client==0.12.0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6"
prompt-toolkit==3.0.21; python_full_version >= "3.6.2"
prompt-toolkit==3.0.22; python_full_version >= "3.6.2"
protobuf==3.19.1; python_version >= "3.5" and python_full_version >= "3.6.2"
psaw==0.0.12; python_version >= "3"
ptyprocess==0.7.0; os_name != "nt" and python_version >= "3.7" and sys_platform != "win32"
py==1.10.0; python_version >= "3.6" and python_full_version < "3.0.0" and implementation_name == "pypy" or implementation_name == "pypy" and python_version >= "3.6" and python_full_version >= "3.4.0"
py==1.11.0; python_version >= "3.6" and python_full_version < "3.0.0" and implementation_name == "pypy" or implementation_name == "pypy" and python_version >= "3.6" and python_full_version >= "3.5.0"
pyally==1.1.2
pycoingecko==1.4.1
pycparser==2.20; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.4.0" and python_version >= "3.6"
@@ -141,7 +141,7 @@ pymeeus==0.5.11; python_version >= "3.6"
pyobjc-core==7.3; python_version >= "3.6" and sys_platform == "darwin"
pyobjc-framework-cocoa==7.3; python_version >= "3.6" and sys_platform == "darwin"
pyotp==2.6.0; python_version >= "3"
pyparsing==2.4.7; python_version >= "3.7" and python_full_version < "3.0.0" or python_full_version >= "3.3.0" and python_version >= "3.7"
pyparsing==3.0.4; python_version >= "3.7"
pyportfolioopt==1.5.1; python_full_version >= "3.6.1" and python_full_version < "4.0.0"
pyprind==2.11.3; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.6.0"
pyrsistent==0.14.11
@@ -153,7 +153,7 @@ pytrends==4.7.3
pytz-deprecation-shim==0.1.0.post0; python_version >= "3.6" and python_full_version < "3.0.0" or python_full_version >= "3.6.0" and python_version >= "3.6"
pytz==2021.3; python_full_version >= "3.6.8" and python_version >= "3.6" and python_full_version < "4.0.0"
pyupgrade==2.18.2; python_full_version >= "3.6.1"
pywin32==301; sys_platform == "win32" and platform_python_implementation != "PyPy" and python_version >= "3.6"
pywin32==302; sys_platform == "win32" and platform_python_implementation != "PyPy" and python_version >= "3.6"
pywinpty==1.1.5; os_name == "nt" and python_version >= "3.6"
pyyaml==6.0; python_version >= "3.6"
pyzmq==22.3.0; python_full_version >= "3.6.1" and python_version >= "3.6"
@@ -165,7 +165,6 @@ rapidfuzz==1.8.2; python_version >= "2.7"
regex==2020.11.13
reportlab==3.6.2; python_version >= "3.6" and python_version < "4"
requests-oauthlib==1.3.0; python_version >= "2.7" and python_full_version < "3.0.0" or python_full_version >= "3.4.0"
requests-unixsocket==0.2.0; python_version >= "3.6"
requests==2.26.0; (python_version >= "2.7" and python_full_version < "3.0.0") or (python_full_version >= "3.6.0")
retrying==1.3.3
robin-stocks==2.1.0; python_version >= "3"

View File

@@ -10,3 +10,5 @@
<script defer src="{{ index .Site.Data.assets "js/clipboard.min.js" | relURL }}"></script>
<script defer src="{{ index .Site.Data.assets "js/clipboard-loader.min.js" | relURL }}"></script>
{{ end }}
<!-- Cloudflare Web Analytics --><script defer src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{"token": "{{BEACON}}"}'></script><!-- End Cloudflare Web Analytics -->