Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Istio work #7

Open
wants to merge 389 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
389 commits
Select commit Hold shift + click to select a range
cbe4dd5
Merge branch 'main' of https://github.com/ii/org into main
BobyMCbobs May 11, 2021
a032457
Add asn-to-company-peeringdb-data.org
BobyMCbobs May 12, 2021
488d6c4
Update to use tmate session for interaction
BobyMCbobs May 12, 2021
09ec569
Add data exploration section
BobyMCbobs May 12, 2021
533a164
Add postgres things with start of pg data processor
BobyMCbobs May 12, 2021
8a4152f
Add queries for data discovery
BobyMCbobs May 13, 2021
51e27c3
Update queries
BobyMCbobs May 13, 2021
2808417
Add loading of ASNs txt into table
BobyMCbobs May 13, 2021
c2df84a
Add more data discoveries with queries
BobyMCbobs May 13, 2021
0fad425
Steps to use big query sql-mode SRC block
hh May 13, 2021
f14083e
Starting on bq org files
bernokl May 13, 2021
156c152
Blog: Creating an e2e test for conformance (#22)
heyste May 13, 2021
2070634
Merge branch 'main' of github.com:ii/org into main
hh May 13, 2021
5a3eea5
Starting audit script using gcp bulk export
bernokl May 14, 2021
3d180b0
Merge branch 'main' of github.com:ii/org into main
bernokl May 14, 2021
5260fea
Update asn-to-company-peeringdb-data.org
BobyMCbobs May 14, 2021
6c8262b
Merge branch 'main' of https://github.com/ii/org into main
BobyMCbobs May 14, 2021
601f640
Working sh, waiting on permissions
bernokl May 14, 2021
1582c5b
Merge branch 'main' of github.com:ii/org into main
bernokl May 14, 2021
9db0b10
Start with steps needed to connect to eks
May 17, 2021
6d9dbf2
Working cncf/k8s-conf plugin dev flow
May 18, 2021
0aefd60
Research enabling cloudasset for staging-apisnoop
May 18, 2021
9dde9c6
Documenting apisnoop release
bernokl May 19, 2021
7d1d49c
Starting infra tf management
May 20, 2021
9ab03a9
Merge branch 'main' of https://github.com/ii/org into main
May 20, 2021
344e4d7
Terraform working for creating buckets / datasets
May 20, 2021
de465ce
Minor tweak to tf
May 20, 2021
d06991d
Restructure k8s infra docs
BobyMCbobs May 23, 2021
1ea7d82
Add research on container image hash to tag
BobyMCbobs May 23, 2021
6264449
Add building-the-solution/README.org
BobyMCbobs May 23, 2021
b0e84e5
v1 Very manual data load and transformation
May 26, 2021
f5d84ec
Add some additional data exploration of peeringdb
May 26, 2021
4e8f1fc
My stuff
May 26, 2021
1e54cf2
Merge branch 'main' of https://github.com/ii/org into main
May 26, 2021
d71ab18
adding asn-to-company-peeringdb-data back
May 27, 2021
455c65c
Starting mapping of gcp, aws, azure ips
May 27, 2021
4ee0db9
Add postgres into the mix
May 27, 2021
6048959
Final push
May 27, 2021
e585131
With data load into bq
May 27, 2021
0c7da4f
Add ii/kanboard
May 30, 2021
eddd9eb
Pull asns-ip with shadowserver api service
May 31, 2021
88242c8
Merge branch 'main' of github.com:ii/org into main
May 31, 2021
ff2efe4
Catching up peeringdb-data
May 31, 2021
695a248
Side jaunt to play with ruby containers
May 31, 2021
e4a059c
Starting with pyasn
May 31, 2021
bac2b91
Starting pyasn automation
Jun 1, 2021
253525e
Set Goal
Jun 1, 2021
69697c4
Minor tweaks
Jun 1, 2021
4626d2f
Add initial asp/ip lookup
Jun 2, 2021
338c902
Pushing up for review
Jun 2, 2021
806b971
Dictionary update working
Jun 2, 2021
97667c6
Incorporate feedback
Jun 2, 2021
6772ee7
Working csv output
Jun 2, 2021
d11216f
Add fault tolerance for empty subnets
Jun 2, 2021
5956b4e
Add local processing and push to bq
Jun 2, 2021
8a0c39b
Cleanup
Jun 2, 2021
747f57f
More cleanup
Jun 2, 2021
f7d7705
Combining datasources to create vendor table
Jun 3, 2021
5107443
Add WIP setting-up-a-transparent-cache
BobyMCbobs Jun 3, 2021
fe03df9
Add WIP becoming-a-mirror
BobyMCbobs Jun 3, 2021
2e79f1f
Update to fix peeringdb dump section
Jun 3, 2021
e7b1d74
Merge branch 'main' of github.com:ii/org into main
Jun 3, 2021
0cc2edc
Successfully process full-asn-company.html
Jun 4, 2021
3d785df
Merge branch 'main' of github.com:ii/org
Jun 4, 2021
71d74c7
add singla asn number table
Jun 4, 2021
51fe7d9
Split content out for asn data pipeline
Jun 4, 2021
c2a56d2
Move vendor table org to pipeline
Jun 4, 2021
9aa521a
Starting k8s.io/asn_yaml processing document
Jun 7, 2021
9275f71
Add microsoft json parsing
Jun 8, 2021
3bd61d8
Run bq in org to join shadow and pyasn
Jun 8, 2021
f2f57ae
Working join
Jun 8, 2021
ca75125
add research/org-block-postgresql.org
hh Jun 8, 2021
ce9dd70
Add WIP match-ip-to-iprange/README.org
BobyMCbobs Jun 9, 2021
35646a2
Update match-ip-to-iprange/README.org
BobyMCbobs Jun 9, 2021
7cc82bd
Update becoming-a-mirror/README.org
BobyMCbobs Jun 9, 2021
8f02734
Update setting-up-a-transparent-cache/README.org
BobyMCbobs Jun 9, 2021
e1d845a
bq multi line!
hh Jun 10, 2021
5dcb7f6
Couple of minor updates
Jun 10, 2021
e290f29
Merge branch 'main' of github.com:ii/org
Jun 10, 2021
7124ff8
parsing k8s yaml to bq
Jun 10, 2021
4314e26
pushing asn metadata pulled from peeringdb to bq
Jun 10, 2021
db62a9f
Combine shadowdb and pyasn to make one asn-subnet lookup
Jun 10, 2021
b345fdf
Stand up pg operator on ii-pair instance
Jun 14, 2021
bad18a4
Postgres operator is working
Jun 14, 2021
07c113b
Move operator and dbs to own namespace
Jun 14, 2021
27a60d8
trying it with 3 node cluster on pg-operator
Jun 14, 2021
b880c4e
Update ip-range to work with indexes, it worked
Jun 14, 2021
d3a4f82
Moving ip2ip-range work into the pipeline
Jun 14, 2021
e294bf8
Create bq scratch pad
Jun 16, 2021
768bfaf
Ensuring staging projects log audit info
Jun 16, 2021
59995a1
Merge branch 'main' of https://github.com/ii/org
Jun 16, 2021
125e3c0
Few minor tweaks
Jun 16, 2021
ae3663a
Starting asn-etl-dockerfile
Jun 18, 2021
964c3e2
Update research/mitmproxy.org
BobyMCbobs Jun 18, 2021
5875c01
Add ii/local-cluster/README.org
BobyMCbobs Jun 18, 2021
566047c
Add fetching of Talos configs
BobyMCbobs Jun 18, 2021
f0ddbb3
Ensure tmate logs don't appear in the repo
BobyMCbobs Jun 18, 2021
77f2621
Add Dockerfile
BobyMCbobs Jun 20, 2021
d551a24
Flushing out some of the script
Jun 20, 2021
a8b5bf7
Finished pyasn section
Jun 21, 2021
191569f
Add google-cloud-sdk to image
BobyMCbobs Jun 21, 2021
7ee1ff4
Add Join query
Jun 21, 2021
e72f24e
Process done up to peeringdb
Jun 21, 2021
30e86f9
Merge branch 'main' of https://github.com/ii/org
Jun 21, 2021
57dde32
Finish peeringdb section
Jun 21, 2021
cc25b64
Need to get gcloud .json auth to work
Jun 21, 2021
6e2cffc
Update container image for asn-data-pipeline
BobyMCbobs Jun 21, 2021
3d0fe07
Update asn-data-pipeline
BobyMCbobs Jun 22, 2021
00967be
Move further with data loading job
BobyMCbobs Jun 22, 2021
e9f3808
Push potaroot, couple bq table name changes
Jun 22, 2021
fee66d5
Update local-cluster docs
BobyMCbobs Jun 22, 2021
c81279d
Update pipeline for asn data
Jun 22, 2021
97163b6
Update asn-data-pineline
Jun 22, 2021
972f473
Update asn-data-pipeline
Jun 23, 2021
202bb62
Update asn-data-pipeline
Jun 23, 2021
b17866b
Update retain script in asn-data-pipeline
Jun 23, 2021
a71188a
create data transformations
Jun 23, 2021
caaabf0
Add log loading
Jun 23, 2021
1d4f0c7
Update local-cluster
BobyMCbobs Jun 23, 2021
b15f573
Add local-cluster assets
BobyMCbobs Jun 23, 2021
b9e3ef8
Update data transformations
Jun 23, 2021
2479d94
Merge pull request #23 from ii/riaan_bq_data_transformations
riaankleinhans Jun 23, 2021
532adbe
All steps defined
Jun 24, 2021
65b8bd8
Update dnsmasq deployment
BobyMCbobs Jun 24, 2021
3821a5c
Update local-cluster docs
BobyMCbobs Jun 24, 2021
02f9a24
Update local-cluster sidero + dnsmasq
BobyMCbobs Jun 24, 2021
2283ee5
Minor tweaks to fix ip lookup
bernokl Jun 25, 2021
5ef1714
Pipeline working up to asn network range lookup
Jun 25, 2021
042361f
Entire pipeline till asn-ip-name table works
Jun 27, 2021
953ade4
Update etl-pipeline to allow alternate log location
Jun 28, 2021
74d7c89
Add k8s cronjob deployment for testing
Jun 28, 2021
91ceea4
Final working pipeline. up to _prod
Jun 29, 2021
9fa2aab
Working around need for log permissions
Jun 29, 2021
dffb187
Minor tweak to fix last step
Jun 29, 2021
5c61062
Add removing of existing IAM SA keys
BobyMCbobs Jun 30, 2021
62af88f
Ensure exit on failure
BobyMCbobs Jun 30, 2021
b02af46
Add WIP ProwJob for ASN ETL Pipeline
BobyMCbobs Jun 30, 2021
d9f0a27
Update deployment and running in Docker cmd
BobyMCbobs Jun 30, 2021
d223afd
Get dnsmasq into a TFTP booting state
BobyMCbobs Jun 30, 2021
8237822
Update dnsmasq
BobyMCbobs Jul 1, 2021
236706e
Update sidero and dnsmasq deployment
BobyMCbobs Jul 1, 2021
40d47b7
Update local-cluster
BobyMCbobs Jul 2, 2021
18c5730
Update local-network
BobyMCbobs Jul 5, 2021
20c3d0a
Update local-cluster
BobyMCbobs Jul 5, 2021
871fd2e
Update local-cluster
BobyMCbobs Jul 5, 2021
60b9c3d
Update local-cluster
BobyMCbobs Jul 6, 2021
7c095c4
Update local-cluster
BobyMCbobs Jul 6, 2021
606f577
Update local-cluster
BobyMCbobs Jul 6, 2021
1b2e75b
Update local-cluster
BobyMCbobs Jul 6, 2021
d0eef3f
Update local-cluster
BobyMCbobs Jul 6, 2021
69755e4
Update local-cluster
BobyMCbobs Jul 6, 2021
3211166
Update local-cluster
BobyMCbobs Jul 6, 2021
6043915
Update local-cluster
BobyMCbobs Jul 6, 2021
2ec9692
Update local-cluster
BobyMCbobs Jul 6, 2021
6c903d4
Update local-cluster
BobyMCbobs Jul 6, 2021
86c6c77
Update local-cluster
BobyMCbobs Jul 6, 2021
c99691d
Update local-cluster
BobyMCbobs Jul 6, 2021
0df31d6
Update local-cluster
BobyMCbobs Jul 6, 2021
b243f80
Update local-cluster
BobyMCbobs Jul 6, 2021
e069dae
Update local-cluster
BobyMCbobs Jul 7, 2021
c7fcc40
Add ii/iiphone/README.org
BobyMCbobs Jul 8, 2021
0b3e6fc
Update local-cluster
BobyMCbobs Jul 9, 2021
8e2808e
Workflow to add custom role and permissions
bernokl Jul 12, 2021
c34a902
Merge branch 'main' of github.com:ii/org into main
bernokl Jul 12, 2021
10306b7
Update MS IP range servicetags
BobyMCbobs Aug 10, 2021
bd7915f
Update ProwJob docs
BobyMCbobs Aug 10, 2021
d121cd3
Update research/asn-data-pipeline/deploying.org
BobyMCbobs Aug 10, 2021
3d93824
Update exit script for asn-data-pipeline
BobyMCbobs Aug 10, 2021
dd2faeb
Add pipeline snapshots
BobyMCbobs Aug 11, 2021
e69f238
Update comments
BobyMCbobs Aug 11, 2021
2cf5966
Update dataset promotion
BobyMCbobs Aug 12, 2021
db716fd
Update PII bucket name
BobyMCbobs Aug 17, 2021
93d0ee0
Add ii/local-cluster/wireguard.yaml
BobyMCbobs Aug 18, 2021
592ae9c
Update research/asn-data-pipeline/asn_pipeline_docker_file.org
BobyMCbobs Aug 23, 2021
a079417
Update ASN data pipeline
BobyMCbobs Aug 25, 2021
a0d903b
Update ASN data pipeline
BobyMCbobs Aug 26, 2021
43e3fc9
Add research/mailserver.org
BobyMCbobs Aug 26, 2021
afc91d7
Update ASN data pipeline
BobyMCbobs Aug 27, 2021
908c350
Fix date for promoting tables
BobyMCbobs Sep 7, 2021
b2d8c40
Update ii/mattermost-ii-coop/
BobyMCbobs Sep 7, 2021
a95912f
Update gitlab-ii-coop configuration
BobyMCbobs Sep 8, 2021
8df112f
Update ii/gitlab-ii-coop/
BobyMCbobs Sep 9, 2021
165598a
Update ASN data pipeline
BobyMCbobs Sep 9, 2021
1b32901
Update ii/equinix-metal-capi-talos-kubernetes/
BobyMCbobs Sep 9, 2021
20a0bc2
Update ii/gitlab-ii-coop/
BobyMCbobs Sep 9, 2021
6d31266
Move ii/gitlab-ii-coop to ii/cluster and add Mattermost
BobyMCbobs Sep 10, 2021
6e3ea88
Fix date in ASN data pipeline
BobyMCbobs Sep 10, 2021
a32597e
Update GitLab deploy docs
BobyMCbobs Sep 10, 2021
20fd473
Update ii/cluster/
BobyMCbobs Sep 17, 2021
e50ac50
Update gitlab docs for ii cluster
BobyMCbobs Sep 28, 2021
5e572de
Update gitlab docs for ii cluster
BobyMCbobs Sep 28, 2021
cb67ef8
Update host for gitlab
BobyMCbobs Sep 28, 2021
e351f29
Update kanban deployment
BobyMCbobs Sep 28, 2021
ffaa1a5
Add ii/community-infra/
BobyMCbobs Sep 29, 2021
5499bab
Add Rook+Ceph
BobyMCbobs Sep 29, 2021
d5d6005
Fix IP for accessing Rook-Ceph MGR dashboard
BobyMCbobs Sep 29, 2021
7450d74
Add script to wipe all drives on all nodes
BobyMCbobs Sep 29, 2021
89f7bfe
Add reset and Humacs
BobyMCbobs Sep 30, 2021
81cc80a
Add load testing the candidates
BobyMCbobs Oct 5, 2021
87760c7
Update envoy-dynamic-host-rewriting/
BobyMCbobs Oct 5, 2021
235c9b2
Add pair instance settings to load-testing-the-candidates/README.org
BobyMCbobs Oct 5, 2021
aef289f
Update load-testing-the-candidates/
BobyMCbobs Oct 6, 2021
efa1f75
Update load-testing-the-candidates/
BobyMCbobs Oct 8, 2021
c4e4f21
Add code block for preparing artifactserver repo
BobyMCbobs Oct 18, 2021
14329e5
Add nginx-njs-host-rewriting/
BobyMCbobs Oct 20, 2021
5f5697d
Add envoy-wasm-dynamic-host-rewriting/
BobyMCbobs Oct 21, 2021
f37dbe7
Fix missing path in nginx-njs-host-rewriting/
BobyMCbobs Oct 21, 2021
a607ceb
Update load-testing-the-candidates/
BobyMCbobs Oct 21, 2021
5a41ea1
Update envoy-dynamic-host-rewriting/
BobyMCbobs Oct 21, 2021
734db60
Update envoy-wasm-dynamic-host-rewriting/
BobyMCbobs Oct 21, 2021
f4a71f2
Update image build for envoy-wasm-dynamic-host-rewriting/
BobyMCbobs Oct 21, 2021
af17905
Add notes and references
BobyMCbobs Oct 21, 2021
3152b87
Ensure njs implementation is using 302 status code
BobyMCbobs Oct 21, 2021
157c6e0
Update envoy-wasm-dynamic-host-rewriting/
BobyMCbobs Oct 21, 2021
3d4d218
Add securityContext to wasm deployment
BobyMCbobs Oct 21, 2021
1385405
Update securityContext for envoy+lua+go
BobyMCbobs Oct 21, 2021
81d0f1b
Update securityContext for artifactserver
BobyMCbobs Oct 21, 2021
a08a447
Update securityContext and image for nginx njs
BobyMCbobs Oct 21, 2021
7906ea6
Remove commented command field
BobyMCbobs Oct 21, 2021
bdf524c
Rename deployment for envoy-wasm
BobyMCbobs Oct 21, 2021
6bcb43f
Rename deployment for nginx-njs
BobyMCbobs Oct 21, 2021
002699e
Rename deployment for artifactserver
BobyMCbobs Oct 21, 2021
a7a2cf0
Rename deployment for envoy
BobyMCbobs Oct 21, 2021
6a79664
Add research/k8s-infra-registry-artifacts-migration/diagram.org
BobyMCbobs Oct 26, 2021
a22faa7
add xDS Conformance blog post
zachmandeville Dec 9, 2021
43f7717
Restructure k8s infra docs
BobyMCbobs May 23, 2021
93e23b8
Add Unify Controller management
BobyMCbobs Dec 12, 2021
8eade0c
Update ii/cluster
BobyMCbobs Dec 12, 2021
1e0ff7c
Add ii/ft-ii-nz
BobyMCbobs Dec 12, 2021
31a9fac
Add local-cluster/cool-files.yaml
BobyMCbobs Dec 12, 2021
5cc3c18
Add research/harbor/
BobyMCbobs Dec 12, 2021
43abe10
Add research/distribution/
BobyMCbobs Dec 12, 2021
a473b16
Add Wireguard to ii/cluster
BobyMCbobs Dec 14, 2021
10bc69c
Add export for KUBECONFIG in ii/cluster/README.org
BobyMCbobs Dec 14, 2021
96c7290
ADD WIP Mattermost back up CronJob
BobyMCbobs Feb 15, 2022
0f147c4
Add todo for mattermost backup
BobyMCbobs Feb 15, 2022
7ccfba4
Fix volumeMounts in mattermost backup
BobyMCbobs Feb 15, 2022
451580d
Update mattermost-backup
BobyMCbobs Feb 16, 2022
3310b0d
Update backup schedule
BobyMCbobs Feb 16, 2022
8c1d5d2
Add cncf.ci redirect
BobyMCbobs Mar 11, 2022
97935b2
Add ii-nz-temp
BobyMCbobs Mar 11, 2022
05c5490
Add learning/knative/README.org
BobyMCbobs Mar 30, 2022
b858637
add asciicinema thoughts
zachmandeville Apr 26, 2023
63d9959
add exploratory org file for istio work
zachmandeville Jun 12, 2023
dc8546a
First export and setup
zachmandeville Jun 13, 2023
94e0136
Add local revealjs package
zachmandeville Jun 13, 2023
04aa02b
second attempt
zachmandeville Jun 13, 2023
3a11eb6
third export and research
zachmandeville Jun 13, 2023
660005e
Fourth attempt and current theories
zachmandeville Jun 13, 2023
9f0cbe7
update istio work org file
zachmandeville Jun 16, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
205 changes: 0 additions & 205 deletions .dir-locals.el

This file was deleted.

8 changes: 7 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,10 @@ cncf/apisnoop/plugins.yaml
cncf/ci/*service*json
cncf/ci/cookie
cncf/ci/*auth-config
cncf/ci/*-token
cncf/ci/*-token
.env
.DS_Store
.orgids
blog/public
blog/resources
**/tmate-*.log
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "themes/harbor"]
path = themes/harbor
url = https://github.com/matsuyoshi30/harbor.git
3 changes: 3 additions & 0 deletions README.org
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#+TITLE: ii org files

A broad collection of org files in various states of completion, formality. the best of them are included in our /blog
3 changes: 3 additions & 0 deletions agenda/notes.org
Original file line number Diff line number Diff line change
Expand Up @@ -205,3 +205,6 @@ This could help ALOT
Captured On: [2019-11-07 Thu 09:01]
** TODO [[https://github.com/kubernetes/enhancements/pull/1306][Initial draft of Conformance Coverage PR Gate by hh · Pull Request #1306 · kubernetes/enhancements?body]]
Captured On: [2019-11-07 Thu 13:24]
** [[https://github.com/alphapapa/org-ql][alphapapa/org-ql: An Org-mode query language, including search commands and saved views?body]]
An Org-mode query language, including search commands and saved views
Captured On: [2020-01-16 Thu 16:22]
110 changes: 110 additions & 0 deletions asciicinema-and-org.org
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
#+title: Asciicinema And Org

* Introduction
There is an [[https://github.com/asciinema/asciinema-server/issues/84][open ticket]] in ii/doom-config titled "display recorded input in an overlay".
It is about using asciicinema with org and tmux to create screencasts.

This org file is meant to track current thoughts around the ticket, its purpose, and where
it fits into the doom-config.

* Using asciicinema

asciinema([[https://asciinema.org/][homepage]]) is a tool for recording your terminal sessions, with a
mechanism for playing back or sharing these sessions when done. It is useful for
recording demos or recording help videos displaying the steps to enter into a
terminal.

The output of running asciicenma is a ~.cast~ file, which can then be uploaded to asciinema's
cast repository at asciicinema.org or saved and played locally using the asciinema-player.
** asciinema.org
you can upload the cast you made with the command
: asciinema upload file.cast

this returns a prival archive.org url with your playback. It ends up looking a bit like youtube, but only with terminal casts.
** asciinema player
Alternately, you can embed the cast into your own website using [[https://github.com/asciinema/asciinema-player][asciinema-player.]] This is a combo of css and javascript that
you add to your own page and then display the cast file without having to upload it anywhere else.

the css and js can be downloaded from their repo, or you could host them somewhere and then link to them externally.

A simple version of the html page would look like so

#+begin_src html
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="https://link.to/asciinema-player.css" />
</head>
<body>
<div id="cast"></div>
</body>
<script src="https://link.to/asciinema-player.min.js"></script>
<script>
AsciinemaPlayer.create('/example.cast', document.getElementById('cast'));
</script>
</html>
#+end_src

In the above, you would have ~example.cast~ in the same root folder as this ~index.html~, and it combined with the css and js would create an embedded screencast in the #cast div. You coudl then style it further as you see fit.

** asciinema to svg
There is also a cast-to-svg tool you can use so that you can embed the recording without needing additional CSS and javascript.

https://github.com/marionebl/svg-term-cli

this tool takes a cast file as input and outputs a named svg. Then you'd end up with html like so:

#+begin_src html
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body>
<img src='/example-cast.svg' />
</body>
</html>
#+end_src

the longer the session, the bigger the file, and so if we are meaning to do incredibly long sessions, or having multiple casts on a page, this
may not be the best option, but it could be useful for including asciinema output into an org file's exported html.

For example, you could have an org file with a tmux block of

#+begin_example
docker run busybox/helloworld
#+end_example

and then below it as "results" you'd see the terminal session of /just/ this
command, showing docker pulling the file and printing out hello.

* Capturing keyboard input.

You can capture your key input during an asciicinema session by passing in the --stdin flag at the start of the session.
The resulting file will include a data map with the unicode characters pressed. You can then add some additional javascript to
translate that unicode to their correct symbols and then paste it somewhere on that embedded webpage. Abby does a great
breakdown of that, with an demo site, in the repo [[https://github.com/abdabTheCreator/Asciinema-keydisplay/blob/main/index.html][abdabthecreator/asciinema-keydisplay]] .

In the demo site, the keys display above the embedded cast. Overlaying the keys onto the cast, in semi-transparent font, is just a
matter of some CSS. Essentially, you'd put both in a wrapper div, and then give the <p> tag showing the inputs an absolute positioning.

* How does this fit into the doom config?
To be honest, I am not sure yet! From the start of the ticket, it seemed like we were wanting to incorporate asciinema into tmux blocks. When we run the blocks, we do it inside an asciinema session. This would be handy for saving the resulting work as a playback video of sorts in the end.

However, there aren't really keypresses we need to catpure here. All the work is being piped in from tmux. Some of the examples seemed to imply we'd open up emacs in the tmux session, that is connected to another emacs client, and then use that parent client to pipe in keypresses via tmux to the second client. This seems unecessarily convoluted, and I'm not sure the use case.

If we are trying to show a playback of the tmux command being run in some final html, then it feels like we'd want to wrap each tmux command in an asciicinema invocation, with the resulting file name and path being passed in from the src block. We could then just put an img tag beneath each block that has that name, using some elisp triggers and such. Is that what we are trying to achieve here?

As it relates to the doom-config, I imagine we'd likely figure out the exact elisp we'd want to run and then add that to our existing ob-tmux library as an additional option to pass in. This seems the cleanest way.

* Capturing key presses in an emacs org file

The other intention I can see here is to capture our keypresses in the org file itself. We want to show how you can navigate from code block to code block and hit ctrl-c ctrl-c to trigger that codeblock. The idea being that we can create cooperation templates for learning labs, that come with our emacs and some file you are meant to read through and excute the scripts as you approach them. In this case, the person isn't trying to use emacs, emacs is more of a executable document viewer.

If that is the case, I think it'd be better to record a screencast separate from the org file, since it is intended to show the keypresses for any org file. We could then link to that screencst in our documentation. Alternately, it is possible to present elisp functions as a link. So we could hae a link above each code block that, when clicked, runs the command "excute this code block". The person reading through the document only needs to know how to scroll and click.

At that point, though, it might be more useful to think about a rendered website that has these links as buttons that pass the info to the emacs server which then runs the command. Then, when someone is starting up their lab, they just navigate to a given page, read the instructions, click where they're meant to, and see the output in a tmux window open on another tab. this is approaching katacode and other online labs connected to VM's...which is maybe what we want?

In either case, this seems like work that would happen outside the doom-config, and wouldn't require recording keyboard presses in tmux blocks.

* Current thoughts
At the moment, I would like to discuss what our hoped-for goal is, and where that work is best done. The ticket is open in doom-config, but this may not be where the work is needed?
Loading