<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://interfaces3.hunter.cryptograss.live/index.php?action=history&amp;feed=atom&amp;title=Cryptograss%3AHunter%2Fdeploy_logs%2F26330206</id>
	<title>Cryptograss:Hunter/deploy logs/26330206 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://interfaces3.hunter.cryptograss.live/index.php?action=history&amp;feed=atom&amp;title=Cryptograss%3AHunter%2Fdeploy_logs%2F26330206"/>
	<link rel="alternate" type="text/html" href="https://interfaces3.hunter.cryptograss.live/index.php?title=Cryptograss:Hunter/deploy_logs/26330206&amp;action=history"/>
	<updated>2026-11-15T08:49:01Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://interfaces3.hunter.cryptograss.live/index.php?title=Cryptograss:Hunter/deploy_logs/26330206&amp;diff=13863&amp;oldid=prev</id>
		<title>DrivingThatTrain: hunter failed: deploy log</title>
		<link rel="alternate" type="text/html" href="https://interfaces3.hunter.cryptograss.live/index.php?title=Cryptograss:Hunter/deploy_logs/26330206&amp;diff=13863&amp;oldid=prev"/>
		<updated>2026-11-02T22:53:11Z</updated>

		<summary type="html">&lt;p&gt;hunter failed: deploy log&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;✗ hunter redeploy failed&amp;#039;&amp;#039;&amp;#039; at block 26,330,206 (2026-11-02 22:53 UTC), in 0m 40s, by [[User:JMyles|JMyles]], maybelle-config &amp;lt;code&amp;gt;a8e8d54457ff&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Posted by DrivingThatTrain. Taken out before posting: 0 vault values, by exact match, and 0 secret-shaped strings.&lt;br /&gt;
&lt;br /&gt;
== Where it stopped ==&lt;br /&gt;
* caddy : Deploy Caddyfile&lt;br /&gt;
&amp;lt;pre&amp;gt;fatal: [hunter]: FAILED! =&amp;amp;gt; {&amp;quot;changed&amp;quot;: false, &amp;quot;msg&amp;quot;: &amp;quot;AnsibleUndefinedVariable: &amp;#039;dict object&amp;#039; has no attribute &amp;#039;port_range_start&amp;#039;. &amp;#039;dict object&amp;#039; has no attribute &amp;#039;port_range_start&amp;#039;&amp;quot;}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== The whole log ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
PLAY [Setup Magenta Multi-User Development Environment] ************************&lt;br /&gt;
&lt;br /&gt;
TASK [Gathering Facts] *********************************************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [Ensure base directory exists] ********************************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [Create pickipedia backups directory (synced from maybelle)] **************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [Create ascii-art directory] **********************************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [Deploy ASCII art files] **************************************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [Include Security role (SSH hardening, fail2ban, firewall)] ***************&lt;br /&gt;
&lt;br /&gt;
TASK [security : Install security packages] ************************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [security : Configure SSH - disable password authentication] **************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [security : Configure SSH - disable root login with password] *************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [security : Configure SSH - enable public key authentication] *************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [security : Create fail2ban jail.local] ***********************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [security : Enable and start fail2ban] ************************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [security : Configure UFW - allow SSH] ************************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [security : Configure UFW - allow container SSH ports] ********************&lt;br /&gt;
ok: [hunter] =&amp;amp;gt; (item=2240)&lt;br /&gt;
&lt;br /&gt;
TASK [security : Configure UFW - allow HTTP/HTTPS] *****************************&lt;br /&gt;
ok: [hunter] =&amp;amp;gt; (item=80)&lt;br /&gt;
ok: [hunter] =&amp;amp;gt; (item=443)&lt;br /&gt;
&lt;br /&gt;
TASK [security : Configure UFW - close the retired people&amp;#039;s containers&amp;#039; ports] ***&lt;br /&gt;
ok: [hunter] =&amp;amp;gt; (item=2222)&lt;br /&gt;
ok: [hunter] =&amp;amp;gt; (item=2223)&lt;br /&gt;
ok: [hunter] =&amp;amp;gt; (item=2224)&lt;br /&gt;
ok: [hunter] =&amp;amp;gt; (item=14000:14029)&lt;br /&gt;
&lt;br /&gt;
TASK [security : Configure UFW - allow shared services] ************************&lt;br /&gt;
ok: [hunter] =&amp;amp;gt; (item=3000)&lt;br /&gt;
ok: [hunter] =&amp;amp;gt; (item=8000)&lt;br /&gt;
&lt;br /&gt;
TASK [security : Enable UFW] ***************************************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [Include Docker role] *****************************************************&lt;br /&gt;
&lt;br /&gt;
TASK [docker : Update apt cache] ***********************************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [docker : Install required packages] **************************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [docker : Check if Docker is already installed] ***************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [docker : Add Docker GPG key] *********************************************&lt;br /&gt;
skipping: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [docker : Add Docker repository] ******************************************&lt;br /&gt;
skipping: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [docker : Install Docker] *************************************************&lt;br /&gt;
skipping: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [docker : Install Docker Compose via apt] *********************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [docker : Ensure Docker service is running] *******************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [docker : Add magent user to docker group] ********************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [Build magenta base image] ************************************************&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Clone or update maybelle-config repository] ****************&lt;br /&gt;
changed: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Force fetch latest changes from production branch] *********&lt;br /&gt;
changed: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Clone or update magenta repository (agents&amp;#039; instructions; memory-lane)] ***&lt;br /&gt;
changed: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Force fetch latest magenta changes from main branch] *******&lt;br /&gt;
changed: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Get docker group GID from host] ****************************&lt;br /&gt;
changed: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Create the build log directory] ****************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Build magenta base image (step by step in /opt/magenta/logs/image-build.log)] ***&lt;br /&gt;
changed: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Where the image build spent its time] **********************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Show the build&amp;#039;s timing] ***********************************&lt;br /&gt;
ok: [hunter] =&amp;amp;gt; {&lt;br /&gt;
    &amp;quot;build_timing.stdout_lines&amp;quot;: [&lt;br /&gt;
        &amp;quot;36 steps: 9 ran (1s), 27 cached&amp;quot;,&lt;br /&gt;
        &amp;quot;     0.4s  [internal] load metadata for docker.io/library/ubuntu:26.04&amp;quot;,&lt;br /&gt;
        &amp;quot;     0.4s  [26/30] ADD https://raw.githubusercontent.com/cryptograss/magenta/main/memory-lane/requirements.txt /tmp/memor&amp;quot;,&lt;br /&gt;
        &amp;quot;     0.2s  [30/30] RUN chmod +x /usr/local/bin/container_startup.py&amp;quot;,&lt;br /&gt;
        &amp;quot;     0.0s  [internal] load local bake definitions&amp;quot;,&lt;br /&gt;
        &amp;quot;     0.0s  [internal] load build definition from Dockerfile&amp;quot;,&lt;br /&gt;
        &amp;quot;     0.0s  [internal] load .dockerignore&amp;quot;,&lt;br /&gt;
        &amp;quot;     0.0s  [1/30] FROM docker.io/library/ubuntu:26.04@sha256:6a06111c3b0a8600feadb270aec771dc239bf407b25625f93f44ab00e11f&amp;quot;,&lt;br /&gt;
        &amp;quot;     0.0s  [internal] load build context&amp;quot;,&lt;br /&gt;
        &amp;quot;     0.0s  [29/30] COPY container_startup.py /usr/local/bin/&amp;quot;,&lt;br /&gt;
        &amp;quot;cache stopped at: [internal] load metadata for docker.io/library/ubuntu:26.04&amp;quot;&lt;br /&gt;
    ]&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Stop if the image build failed] ****************************&lt;br /&gt;
skipping: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Verify image was built] ************************************&lt;br /&gt;
changed: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [build-image : Cap Docker BuildKit cache at 20GB] *************************&lt;br /&gt;
changed: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [Include Caddy role for reverse proxy] ************************************&lt;br /&gt;
&lt;br /&gt;
TASK [caddy : Install Caddy (from Ubuntu universe repository)] *****************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [caddy : Create Caddy config directory] ***********************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [caddy : Each Mood&amp;#039;s previews, an empty start (hunter)] *******************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [caddy : What on-demand TLS may ask for (hunter)] *************************&lt;br /&gt;
ok: [hunter]&lt;br /&gt;
&lt;br /&gt;
TASK [caddy : Deploy Caddyfile] ************************************************&lt;br /&gt;
An exception occurred during task execution. To see the full traceback, use -vvv. The error was: ansible.errors.AnsibleUndefinedVariable: &amp;#039;dict object&amp;#039; has no attribute &amp;#039;port_range_start&amp;#039;. &amp;#039;dict object&amp;#039; has no attribute &amp;#039;port_range_start&amp;#039;&lt;br /&gt;
fatal: [hunter]: FAILED! =&amp;amp;gt; {&amp;quot;changed&amp;quot;: false, &amp;quot;msg&amp;quot;: &amp;quot;AnsibleUndefinedVariable: &amp;#039;dict object&amp;#039; has no attribute &amp;#039;port_range_start&amp;#039;. &amp;#039;dict object&amp;#039; has no attribute &amp;#039;port_range_start&amp;#039;&amp;quot;}&lt;br /&gt;
&lt;br /&gt;
NO MORE HOSTS LEFT *************************************************************&lt;br /&gt;
&lt;br /&gt;
PLAY RECAP *********************************************************************&lt;br /&gt;
hunter                     : ok=38   changed=8    unreachable=0    failed=1    skipped=4    rescued=0    ignored=0   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Deploy logs]] [[Category:hunter deploy logs]]&lt;/div&gt;</summary>
		<author><name>DrivingThatTrain</name></author>
	</entry>
</feed>