Skip to content

Conversation

@charliemirabile
Copy link
Contributor

@charliemirabile charliemirabile commented Apr 1, 2024

finally there is one true container-compose.yml

Podman compose uses the wrong order of precedence for the evironment variables so I had to add one more commit to fix that. Make sure to pull again to get the latest commit if you want to test with non localhost / in dev versions.

@theyoyojo
Copy link
Contributor

This PR breaks the tests:

./test.sh
+ trap : EXIT
+ DOCKER=podman
+ require curl
+ command -v curl
+ require podman
+ command -v podman
+ ./script-lint.sh
+ shellcheck script-lint.sh
+ shellcheck test.sh
+ shellcheck orbit/test-style.sh
+ shellcheck orbit/warpdrive.sh
+ pushd orbit
~/src/singularity/orbit ~/src/singularity
+ ./test-style.sh
+ flake8 radius.py
+ flake8 config.py
+ flake8 db.py
+ flake8 hyperspace.py
+ popd
~/src/singularity
+ mkdir -p test
+ rm -f test/ca_cert.pem test/email_orig.tar test/orbit_orig.tar test/register_fail_no_user
+ DEVEL=
+ STAGING=
+ EMAIL_HOSTNAME=kdlp.underground.software
+ '[' -n '' ']'
+ '[' -n '' ']'
+ podman cp singularity_nginx_1:/etc/ssl/nginx/fullchain.pem test/ca_cert.pem
+ podman volume export singularity_email
+ nuke_mail
+ podman run --rm -v singularity_email:/mnt alpine:3.19 sh -c 'rm -f /mnt/mail/* /mnt/logs/*'
+ add_cleanup 'podman volume import singularity_email test/email_orig.tar'
++ printf '%s\n' 'podman volume import singularity_email test/email_orig.tar'
+++ trap -p EXIT
++ eval 'get_stack trap -- '\'':'\'' EXIT'
+++ get_stack trap -- : EXIT
+++ printf '%s\n' :
+ trap -- 'podman volume import singularity_email test/email_orig.tar
:' EXIT
+ CURL_OPTS=(--verbose --cacert test/ca_cert.pem --fail --no-progress-meter)
+ podman volume export singularity_orbit-db
+ xxd -r
+ gunzip
+ podman volume import singularity_orbit-db -
+ add_cleanup 'podman volume import singularity_orbit-db test/orbit_orig.tar'
++ printf '%s\n' 'podman volume import singularity_orbit-db test/orbit_orig.tar'
+++ trap -p EXIT
++ eval 'get_stack trap -- '\''podman volume import singularity_email test/email_orig.tar
:'\'' EXIT'
+++ get_stack trap -- 'podman volume import singularity_email test/email_orig.tar
:' EXIT
+++ printf '%s\n' 'podman volume import singularity_email test/email_orig.tar
:'
+ trap -- 'podman volume import singularity_orbit-db test/orbit_orig.tar
podman volume import singularity_email test/email_orig.tar
:' EXIT
+ curl --url https://kdlp.underground.software/register --unix-socket ./socks/https.sock --verbose --cacert test/ca_cert.pem --fail --no-progress-meter --data student_id=1234
+ tee test/register_fail_no_user
+ grep 'msg = no such student'
* processing: https://kdlp.underground.software/register
*   Trying ./socks/https.sock:0...
* Connected to kdlp.underground.software (/run/nginx/socks/https.sock) port 443
* ALPN: offers h2,http/1.1
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
*  CAfile: test/ca_cert.pem
*  CApath: none
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [25 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [1340 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [520 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN: server accepted http/1.1
* Server certificate:
*  subject: CN=kdlp.underground.software
*  start date: Apr  1 22:15:48 2024 GMT
*  expire date: Apr 25 22:15:48 2389 GMT
*  common name: kdlp.underground.software (matched)
*  issuer: CN=kdlp.underground.software
*  SSL certificate verify ok.
* using HTTP/1.1
} [5 bytes data]
> POST /register HTTP/1.1
> Host: kdlp.underground.software
> User-Agent: curl/8.2.1
> Accept: */*
> Content-Length: 15
> Content-Type: application/x-www-form-urlencoded
>
} [15 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
< HTTP/1.1 200 OK
< Server: nginx
< Date: Tue, 02 Apr 2024 02:08:16 GMT
< Content-Type: text/html
< Transfer-Encoding: chunked
< Connection: keep-alive
< Set-Cookie: auth=
< Set-Cookie: auth=
<
{ [1177 bytes data]
* Connection #0 to host kdlp.underground.software left intact
        <code>msg = no such student</code><br>
+ curl --url https://kdlp.underground.software/login --unix-socket ./socks/https.sock --verbose --cacert test/ca_cert.pem --fail --no-progress-meter --data 'username=user&password=pass'
+ tee test/login_fail_no_user
+ grep 'msg = authentication failure'
* processing: https://kdlp.underground.software/login
*   Trying ./socks/https.sock:0...
* Connected to kdlp.underground.software (/run/nginx/socks/https.sock) port 443
* ALPN: offers h2,http/1.1
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
*  CAfile: test/ca_cert.pem
*  CApath: none
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [25 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [1340 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [520 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN: server accepted http/1.1
* Server certificate:
*  subject: CN=kdlp.underground.software
*  start date: Apr  1 22:15:48 2024 GMT
*  expire date: Apr 25 22:15:48 2389 GMT
*  common name: kdlp.underground.software (matched)
*  issuer: CN=kdlp.underground.software
*  SSL certificate verify ok.
* using HTTP/1.1
} [5 bytes data]
> POST /login HTTP/1.1
> Host: kdlp.underground.software
> User-Agent: curl/8.2.1
> Accept: */*
> Content-Length: 27
> Content-Type: application/x-www-form-urlencoded
>
} [27 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
< HTTP/1.1 200 OK
< Server: nginx
< Date: Tue, 02 Apr 2024 02:08:16 GMT
< Content-Type: text/html
< Transfer-Encoding: chunked
< Connection: keep-alive
< Set-Cookie: auth=
< Set-Cookie: auth=
< Set-Cookie: auth=
< Set-Cookie: auth=
<
{ [1382 bytes data]
* Connection #0 to host kdlp.underground.software left intact
        <code>msg = authentication failure</code><br>
+ orbit/warpdrive.sh -u user -p pass -i 1234 -n
+ tee test/create_user
+ grep 'credentials(username: user, password:pass)'
credentials(username: user, password:pass)
+ add_cleanup 'orbit/warpdrive.sh   -u user -w   | tee test/delete_user   | grep '\''user'\'''
++ printf '%s\n' 'orbit/warpdrive.sh   -u user -w   | tee test/delete_user   | grep '\''user'\'''
+++ trap -p EXIT
++ eval 'get_stack trap -- '\''podman volume import singularity_orbit-db test/orbit_orig.tar
podman volume import singularity_email test/email_orig.tar
:'\'' EXIT'
+++ get_stack trap -- 'podman volume import singularity_orbit-db test/orbit_orig.tar
podman volume import singularity_email test/email_orig.tar
:' EXIT
+++ printf '%s\n' 'podman volume import singularity_orbit-db test/orbit_orig.tar
podman volume import singularity_email test/email_orig.tar
:'
+ trap -- 'orbit/warpdrive.sh   -u user -w   | tee test/delete_user   | grep '\''user'\''
podman volume import singularity_orbit-db test/orbit_orig.tar
podman volume import singularity_email test/email_orig.tar
:' EXIT
+ tee test/register_fail_wrong
+ curl --url https://kdlp.underground.software/register --unix-socket ./socks/https.sock --verbose --cacert test/ca_cert.pem --fail --no-progress-meter --data student_id=123
+ grep 'msg = no such student'
* processing: https://kdlp.underground.software/register
*   Trying ./socks/https.sock:0...
* Connected to kdlp.underground.software (/run/nginx/socks/https.sock) port 443
* ALPN: offers h2,http/1.1
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
*  CAfile: test/ca_cert.pem
*  CApath: none
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [25 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [1340 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [520 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN: server accepted http/1.1
* Server certificate:
*  subject: CN=kdlp.underground.software
*  start date: Apr  1 22:15:48 2024 GMT
*  expire date: Apr 25 22:15:48 2389 GMT
*  common name: kdlp.underground.software (matched)
*  issuer: CN=kdlp.underground.software
*  SSL certificate verify ok.
* using HTTP/1.1
} [5 bytes data]
> POST /register HTTP/1.1
> Host: kdlp.underground.software
> User-Agent: curl/8.2.1
> Accept: */*
> Content-Length: 14
> Content-Type: application/x-www-form-urlencoded
>
} [14 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
< HTTP/1.1 200 OK
< Server: nginx
< Date: Tue, 02 Apr 2024 02:08:16 GMT
< Content-Type: text/html
< Transfer-Encoding: chunked
< Connection: keep-alive
< Set-Cookie: auth=
< Set-Cookie: auth=
<
{ [1177 bytes data]
* Connection #0 to host kdlp.underground.software left intact
        <code>msg = no such student</code><br>
+ curl --url https://kdlp.underground.software/register --unix-socket ./socks/https.sock --verbose --cacert test/ca_cert.pem --fail --no-progress-meter --data student_id=1234
+ tee test/register_success
+ grep 'msg = welcome to the classroom'
* processing: https://kdlp.underground.software/register
*   Trying ./socks/https.sock:0...
* Connected to kdlp.underground.software (/run/nginx/socks/https.sock) port 443
* ALPN: offers h2,http/1.1
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
*  CAfile: test/ca_cert.pem
*  CApath: none
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [25 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [1340 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [520 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN: server accepted http/1.1
* Server certificate:
*  subject: CN=kdlp.underground.software
*  start date: Apr  1 22:15:48 2024 GMT
*  expire date: Apr 25 22:15:48 2389 GMT
*  common name: kdlp.underground.software (matched)
*  issuer: CN=kdlp.underground.software
*  SSL certificate verify ok.
* using HTTP/1.1
} [5 bytes data]
> POST /register HTTP/1.1
> Host: kdlp.underground.software
> User-Agent: curl/8.2.1
> Accept: */*
> Content-Length: 15
> Content-Type: application/x-www-form-urlencoded
>
} [15 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
< HTTP/1.1 200 OK
< Server: nginx
< Date: Tue, 02 Apr 2024 02:08:16 GMT
< Content-Type: text/html
< Transfer-Encoding: chunked
< Connection: keep-alive
< Set-Cookie: auth=
< Set-Cookie: auth=
<
{ [1087 bytes data]
* Connection #0 to host kdlp.underground.software left intact
        <code>msg = welcome to the classroom</code><br>
+ curl --url https://kdlp.underground.software/register --unix-socket ./socks/https.sock --verbose --cacert test/ca_cert.pem --fail --no-progress-meter --data student_id=1234
+ tee test/register_fail_duplicate
+ grep 'msg = no such student'
* processing: https://kdlp.underground.software/register
*   Trying ./socks/https.sock:0...
* Connected to kdlp.underground.software (/run/nginx/socks/https.sock) port 443
* ALPN: offers h2,http/1.1
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
*  CAfile: test/ca_cert.pem
*  CApath: none
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [25 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [1340 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [520 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN: server accepted http/1.1
* Server certificate:
*  subject: CN=kdlp.underground.software
*  start date: Apr  1 22:15:48 2024 GMT
*  expire date: Apr 25 22:15:48 2389 GMT
*  common name: kdlp.underground.software (matched)
*  issuer: CN=kdlp.underground.software
*  SSL certificate verify ok.
* using HTTP/1.1
} [5 bytes data]
> POST /register HTTP/1.1
> Host: kdlp.underground.software
> User-Agent: curl/8.2.1
> Accept: */*
> Content-Length: 15
> Content-Type: application/x-www-form-urlencoded
>
} [15 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
< HTTP/1.1 200 OK
< Server: nginx
< Date: Tue, 02 Apr 2024 02:08:16 GMT
< Content-Type: text/html
< Transfer-Encoding: chunked
< Connection: keep-alive
< Set-Cookie: auth=
< Set-Cookie: auth=
<
{ [1177 bytes data]
* Connection #0 to host kdlp.underground.software left intact
        <code>msg = no such student</code><br>
+ curl --url https://kdlp.underground.software/login --unix-socket ./socks/https.sock --verbose --cacert test/ca_cert.pem --fail --no-progress-meter --data 'username=user&password=invalid'
+ tee test/login_fail_invalid
+ grep 'msg = authentication failure'
* processing: https://kdlp.underground.software/login
*   Trying ./socks/https.sock:0...
* Connected to kdlp.underground.software (/run/nginx/socks/https.sock) port 443
* ALPN: offers h2,http/1.1
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
*  CAfile: test/ca_cert.pem
*  CApath: none
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [25 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [1340 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [520 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN: server accepted http/1.1
* Server certificate:
*  subject: CN=kdlp.underground.software
*  start date: Apr  1 22:15:48 2024 GMT
*  expire date: Apr 25 22:15:48 2389 GMT
*  common name: kdlp.underground.software (matched)
*  issuer: CN=kdlp.underground.software
*  SSL certificate verify ok.
* using HTTP/1.1
} [5 bytes data]
> POST /login HTTP/1.1
> Host: kdlp.underground.software
> User-Agent: curl/8.2.1
> Accept: */*
> Content-Length: 30
> Content-Type: application/x-www-form-urlencoded
>
} [30 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
< HTTP/1.1 200 OK
< Server: nginx
< Date: Tue, 02 Apr 2024 02:08:17 GMT
< Content-Type: text/html
< Transfer-Encoding: chunked
< Connection: keep-alive
< Set-Cookie: auth=
< Set-Cookie: auth=
< Set-Cookie: auth=
< Set-Cookie: auth=
<
{ [1382 bytes data]
* Connection #0 to host kdlp.underground.software left intact
        <code>msg = authentication failure</code><br>
+ curl --url https://kdlp.underground.software/login --unix-socket ./socks/https.sock --verbose --cacert test/ca_cert.pem --fail --no-progress-meter --data 'username=user&password=pass'
+ tee test/login_success
+ grep 'msg = user authenticated by password'
* processing: https://kdlp.underground.software/login
*   Trying ./socks/https.sock:0...
* Connected to kdlp.underground.software (/run/nginx/socks/https.sock) port 443
* ALPN: offers h2,http/1.1
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
*  CAfile: test/ca_cert.pem
*  CApath: none
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [25 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [1340 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [520 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* ALPN: server accepted http/1.1
* Server certificate:
*  subject: CN=kdlp.underground.software
*  start date: Apr  1 22:15:48 2024 GMT
*  expire date: Apr 25 22:15:48 2389 GMT
*  common name: kdlp.underground.software (matched)
*  issuer: CN=kdlp.underground.software
*  SSL certificate verify ok.
* using HTTP/1.1
} [5 bytes data]
> POST /login HTTP/1.1
> Host: kdlp.underground.software
> User-Agent: curl/8.2.1
> Accept: */*
> Content-Length: 27
> Content-Type: application/x-www-form-urlencoded
>
} [27 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
< HTTP/1.1 200 OK
< Server: nginx
< Date: Tue, 02 Apr 2024 02:08:17 GMT
< Content-Type: text/html
< Transfer-Encoding: chunked
< Connection: keep-alive
< Set-Cookie: auth=
< Set-Cookie: auth=f7d1a480ddb5d13c5a42d4f50467571abc91786fab53dd2ca670d8228a1f9d4b; Expires=Tue, 02 Apr 2024 05:08:17 GMT; Max-Age=10800; Path=/
<
{ [1650 bytes data]
* Connection #0 to host kdlp.underground.software left intact
        <code>msg = user authenticated by password</code><br>
+ curl --url pop3s://kdlp.underground.software --unix-socket ./socks/pop3s.sock --verbose --cacert test/ca_cert.pem --fail --no-progress-meter --user user:pass
+ tee test/pop_get_empty
+ diff /dev/fd/62 /dev/stdin
++ printf '\r\n'
* processing: pop3s://kdlp.underground.software
*   Trying ./socks/pop3s.sock:0...
* Connected to kdlp.underground.software (/run/nginx/socks/pop3s.sock) port 995
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
*  CAfile: test/ca_cert.pem
*  CApath: none
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [6 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [1340 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [520 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* Server certificate:
*  subject: CN=kdlp.underground.software
*  start date: Apr  1 22:15:48 2024 GMT
*  expire date: Apr 25 22:15:48 2389 GMT
*  common name: kdlp.underground.software (matched)
*  issuer: CN=kdlp.underground.software
*  SSL certificate verify ok.
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
< +OK POP3 ready
} [5 bytes data]
> CAPA
{ [5 bytes data]
< +OK Capability list follows
< TOP
< USER
< UIDL
< SASL PLAIN LOGIN
< .
} [5 bytes data]
> AUTH PLAIN
{ [5 bytes data]
< +
} [5 bytes data]
> AHVzZXIAcGFzcw==
{ [5 bytes data]
< +OK got username
} [5 bytes data]
> LIST
{ [5 bytes data]
< +OK maildrop follows
{ [5 bytes data]
* Connection #0 to host kdlp.underground.software left intact
++ printf '\r'
+ CR=$'\r'
+ curl --url smtps://kdlp.underground.software --unix-socket ./socks/smtps.sock --verbose --cacert test/ca_cert.pem --fail --no-progress-meter --mail-from user@kdlp.underground.software --mail-rcpt other@kdlp.underground.software --upload-file - --user user:pass
+ diff /dev/fd/62 /dev/stdin
+ tee test/smtp_send_email
++ printf ''
* processing: smtps://kdlp.underground.software
*   Trying ./socks/smtps.sock:0...
* Connected to kdlp.underground.software (/run/nginx/socks/smtps.sock) port 465
} [5 bytes data]
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
} [512 bytes data]
*  CAfile: test/ca_cert.pem
*  CApath: none
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
* TLSv1.3 (IN), TLS handshake, Encrypted Extensions (8):
{ [6 bytes data]
* TLSv1.3 (IN), TLS handshake, Certificate (11):
{ [1340 bytes data]
* TLSv1.3 (IN), TLS handshake, CERT verify (15):
{ [520 bytes data]
* TLSv1.3 (IN), TLS handshake, Finished (20):
{ [52 bytes data]
* TLSv1.3 (OUT), TLS change cipher, Change cipher spec (1):
} [1 bytes data]
* TLSv1.3 (OUT), TLS handshake, Finished (20):
} [52 bytes data]
* SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
* Server certificate:
*  subject: CN=kdlp.underground.software
*  start date: Apr  1 22:15:48 2024 GMT
*  expire date: Apr 25 22:15:48 2389 GMT
*  common name: kdlp.underground.software (matched)
*  issuer: CN=kdlp.underground.software
*  SSL certificate verify ok.
{ [5 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
{ [57 bytes data]
* old SSL session ID is stale, removing
{ [5 bytes data]
< 220 localhost ESMTP ready
} [5 bytes data]
> EHLO fedora
{ [5 bytes data]
< 250-localhost
< 250 AUTH PLAIN LOGIN
} [5 bytes data]
> AUTH PLAIN
{ [5 bytes data]
< 334
} [5 bytes data]
> AHVzZXIAcGFzcw==
{ [5 bytes data]
< 235 2.0.0 OK
} [5 bytes data]
> MAIL FROM:<user@kdlp.underground.software>
{ [5 bytes data]
< 550 Not authorized to send mail as that user
* MAIL failed: 550
} [5 bytes data]
> QUIT
{ [5 bytes data]
< 221 Goodbye
* Closing connection
} [5 bytes data]
* TLSv1.3 (OUT), TLS alert, close notify (256):
} [2 bytes data]
curl: (55) MAIL failed: 550
+ orbit/warpdrive.sh -u user -w
+ tee test/delete_user
+ grep user
user
+ podman volume import singularity_orbit-db test/orbit_orig.tar
+ podman volume import singularity_email test/email_orig.tar
+ :

@charliemirabile charliemirabile marked this pull request as draft April 2, 2024 15:06
@charliemirabile charliemirabile marked this pull request as ready for review April 2, 2024 16:10
…th .env

These values are likely to vary often, so storing them in .env where they
can be easily changed, and trivially overridden by specifying them on the
commandline or exporting them in the shell when building/deploying/testing
will make the process much smoother.
Now that the hostname is specified in .env there are no differences
between prod and staging so they can be built with the same compose
file (container-compose.yml), but a different hostname and deployment
status can simply be set when building.
Since container-compose-dev only contains additional keys not found in
container-compose.yml and does not delete or modify any keys therein
we do not need to keep two copies of the duplicate data, instead we
can use the merging functionality in compose to achieve the same affect
by just passing both files using -f or by setting the following environ
COMPOSE_FILES=container-compose.yml:container-compose-dev.yml
Copy link
Contributor

@theyoyojo theyoyojo left a comment

Choose a reason for hiding this comment

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

good changes, let's get this merged

@theyoyojo theyoyojo merged commit 2948d0d into master Apr 2, 2024
@theyoyojo theyoyojo deleted the env_file branch April 2, 2024 19:48
@charliemirabile charliemirabile mentioned this pull request Apr 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants