mirror of
				https://github.com/juanfont/headscale.git
				synced 2025-10-28 10:51:44 +01:00 
			
		
		
		
	move "embedded derp" settings into With options for integration tests (#1872)
This commit is contained in:
		
							parent
							
								
									60f0cf908c
								
							
						
					
					
						commit
						7d62e9fce5
					
				@ -37,25 +37,11 @@ func TestDERPServerScenario(t *testing.T) {
 | 
				
			|||||||
		// "user1": len(MustTestVersions),
 | 
							// "user1": len(MustTestVersions),
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	headscaleConfig := map[string]string{
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_URLS":                    "",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_ENABLED":          "true",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_REGION_ID":        "999",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_REGION_CODE":      "headscale",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_REGION_NAME":      "Headscale Embedded DERP",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_STUN_LISTEN_ADDR": "0.0.0.0:3478",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_PRIVATE_KEY_PATH": "/tmp/derp.key",
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		// Envknob for enabling DERP debug logs
 | 
					 | 
				
			||||||
		"DERP_DEBUG_LOGS":        "true",
 | 
					 | 
				
			||||||
		"DERP_PROBER_DEBUG_LOGS": "true",
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	err = scenario.CreateHeadscaleEnv(
 | 
						err = scenario.CreateHeadscaleEnv(
 | 
				
			||||||
		spec,
 | 
							spec,
 | 
				
			||||||
		hsic.WithConfigEnv(headscaleConfig),
 | 
					 | 
				
			||||||
		hsic.WithTestName("derpserver"),
 | 
							hsic.WithTestName("derpserver"),
 | 
				
			||||||
		hsic.WithExtraPorts([]string{"3478/udp"}),
 | 
							hsic.WithExtraPorts([]string{"3478/udp"}),
 | 
				
			||||||
 | 
							hsic.WithEmbeddedDERPServerOnly(),
 | 
				
			||||||
		hsic.WithTLS(),
 | 
							hsic.WithTLS(),
 | 
				
			||||||
		hsic.WithHostnameAsServerURL(),
 | 
							hsic.WithHostnameAsServerURL(),
 | 
				
			||||||
	)
 | 
						)
 | 
				
			||||||
 | 
				
			|||||||
@ -33,24 +33,10 @@ func TestPingAllByIP(t *testing.T) {
 | 
				
			|||||||
		"user2": len(MustTestVersions),
 | 
							"user2": len(MustTestVersions),
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	headscaleConfig := map[string]string{
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_URLS":                    "",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_ENABLED":          "true",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_REGION_ID":        "999",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_REGION_CODE":      "headscale",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_REGION_NAME":      "Headscale Embedded DERP",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_STUN_LISTEN_ADDR": "0.0.0.0:3478",
 | 
					 | 
				
			||||||
		"HEADSCALE_DERP_SERVER_PRIVATE_KEY_PATH": "/tmp/derp.key",
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		// Envknob for enabling DERP debug logs
 | 
					 | 
				
			||||||
		"DERP_DEBUG_LOGS":        "true",
 | 
					 | 
				
			||||||
		"DERP_PROBER_DEBUG_LOGS": "true",
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	err = scenario.CreateHeadscaleEnv(spec,
 | 
						err = scenario.CreateHeadscaleEnv(spec,
 | 
				
			||||||
		[]tsic.Option{},
 | 
							[]tsic.Option{},
 | 
				
			||||||
		hsic.WithTestName("pingallbyip"),
 | 
							hsic.WithTestName("pingallbyip"),
 | 
				
			||||||
		hsic.WithConfigEnv(headscaleConfig),
 | 
							hsic.WithEmbeddedDERPServerOnly(),
 | 
				
			||||||
		hsic.WithTLS(),
 | 
							hsic.WithTLS(),
 | 
				
			||||||
		hsic.WithHostnameAsServerURL(),
 | 
							hsic.WithHostnameAsServerURL(),
 | 
				
			||||||
	)
 | 
						)
 | 
				
			||||||
 | 
				
			|||||||
@ -173,6 +173,26 @@ func WithPostgres() Option {
 | 
				
			|||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// WithEmbeddedDERPServerOnly configures Headscale to start
 | 
				
			||||||
 | 
					// and only use the embedded DERP server.
 | 
				
			||||||
 | 
					// It requires WithTLS and WithHostnameAsServerURL to be
 | 
				
			||||||
 | 
					// set.
 | 
				
			||||||
 | 
					func WithEmbeddedDERPServerOnly() Option {
 | 
				
			||||||
 | 
						return func(hsic *HeadscaleInContainer) {
 | 
				
			||||||
 | 
							hsic.env["HEADSCALE_DERP_URLS"] = ""
 | 
				
			||||||
 | 
							hsic.env["HEADSCALE_DERP_SERVER_ENABLED"] = "true"
 | 
				
			||||||
 | 
							hsic.env["HEADSCALE_DERP_SERVER_REGION_ID"] = "999"
 | 
				
			||||||
 | 
							hsic.env["HEADSCALE_DERP_SERVER_REGION_CODE"] = "headscale"
 | 
				
			||||||
 | 
							hsic.env["HEADSCALE_DERP_SERVER_REGION_NAME"] = "Headscale Embedded DERP"
 | 
				
			||||||
 | 
							hsic.env["HEADSCALE_DERP_SERVER_STUN_LISTEN_ADDR"] = "0.0.0.0:3478"
 | 
				
			||||||
 | 
							hsic.env["HEADSCALE_DERP_SERVER_PRIVATE_KEY_PATH"] = "/tmp/derp.key"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							// Envknob for enabling DERP debug logs
 | 
				
			||||||
 | 
							hsic.env["DERP_DEBUG_LOGS"] = "true"
 | 
				
			||||||
 | 
							hsic.env["DERP_PROBER_DEBUG_LOGS"] = "true"
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// New returns a new HeadscaleInContainer instance.
 | 
					// New returns a new HeadscaleInContainer instance.
 | 
				
			||||||
func New(
 | 
					func New(
 | 
				
			||||||
	pool *dockertest.Pool,
 | 
						pool *dockertest.Pool,
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user