1
0
Fork 0
mirror of https://codeberg.org/icewind/haze.git synced 2026-10-02 01:04:10 +02:00

add sftp with key authentication service

This commit is contained in:
Robin Appelman 2026-05-26 20:45:29 +02:00
commit 204fb676d6
19 changed files with 348 additions and 135 deletions

View file

@ -1,7 +1,7 @@
use crate::cloud::CloudOptions;
use crate::config::{HazeConfig, ProxyConfig};
use crate::image::pull_image;
use crate::service::ServiceTrait;
use crate::service::{split_cmnd, ServiceTrait};
use crate::Result;
use bollard::config::NetworkingConfig;
use bollard::models::{ContainerCreateBody, ContainerState, EndpointSettings, HostConfig};
@ -92,30 +92,29 @@ impl ServiceTrait for Ldap {
_docker: &Docker,
_cloud_id: &str,
_config: &HazeConfig,
) -> Result<Vec<String>> {
) -> Result<Vec<Vec<String>>> {
Ok(vec![
"occ ldap:create-empty-config".into(),
"occ ldap:set-config s01 ldapHost 'ldap://ldap'".into(),
"occ ldap:set-config s01 ldapPort '389'".into(),
"occ ldap:set-config s01 ldapAgentName 'cn=admin,dc=example,dc=org'".into(),
"occ ldap:set-config s01 ldapAgentPassword 'haze'".into(),
"occ ldap:set-config s01 ldapBase 'dc=example,dc=org'".into(),
"occ ldap:set-config s01 ldapBaseUsers 'dc=example,dc=org'".into(),
"occ ldap:set-config s01 ldapBaseGroups 'dc=example,dc=org'".into(),
"occ ldap:set-config s01 ldapLoginFilter '(&(&(objectclass=inetOrgPerson))(uid=%uid))'"
.into(),
"occ ldap:set-config s01 ldapUserFilter '((objectclass=inetOrgPerson))'".into(),
"occ ldap:set-config s01 ldapUserFilterMode '0'".into(),
"occ ldap:set-config s01 ldapUserDisplayName 'sn'".into(),
"occ ldap:set-config s01 ldapUserFilterObjectclass 'inetOrgPerson'".into(),
"occ ldap:set-config s01 ldapGroupFilter '(&(|(objectclass=posixGroup)))'".into(),
"occ ldap:set-config s01 ldapGroupFilterObjectclass 'posixGroup'".into(),
"occ ldap:set-config s01 ldapEmailAttribute 'email'".into(),
"occ ldap:set-config s01 ldapUuidUserAttribute 'email'".into(),
"occ ldap:set-config s01 ldapUuidUserAttribute 'auto'".into(),
"occ ldap:set-config s01 ldapUuidGroupAttribute 'auto'".into(),
"occ ldap:set-config s01 ldapLoginFilterUsername '1'".into(),
"occ ldap:set-config s01 ldapConfigurationActive '1'".into(),
split_cmnd("occ ldap:create-empty-config"),
split_cmnd("occ ldap:set-config s01 ldapHost 'ldap://ldap'"),
split_cmnd("occ ldap:set-config s01 ldapPort '389'"),
split_cmnd("occ ldap:set-config s01 ldapAgentName 'cn=admin,dc=example,dc=org'"),
split_cmnd("occ ldap:set-config s01 ldapAgentPassword 'haze'"),
split_cmnd("occ ldap:set-config s01 ldapBase 'dc=example,dc=org'"),
split_cmnd("occ ldap:set-config s01 ldapBaseUsers 'dc=example,dc=org'"),
split_cmnd("occ ldap:set-config s01 ldapBaseGroups 'dc=example,dc=org'"),
split_cmnd("occ ldap:set-config s01 ldapLoginFilter '(&(&(objectclass=inetOrgPerson))(uid=%uid))'"),
split_cmnd("occ ldap:set-config s01 ldapUserFilter '((objectclass=inetOrgPerson))'"),
split_cmnd("occ ldap:set-config s01 ldapUserFilterMode '0'"),
split_cmnd("occ ldap:set-config s01 ldapUserDisplayName 'sn'"),
split_cmnd("occ ldap:set-config s01 ldapUserFilterObjectclass 'inetOrgPerson'"),
split_cmnd("occ ldap:set-config s01 ldapGroupFilter '(&(|(objectclass=posixGroup)))'"),
split_cmnd("occ ldap:set-config s01 ldapGroupFilterObjectclass 'posixGroup'"),
split_cmnd("occ ldap:set-config s01 ldapEmailAttribute 'email'"),
split_cmnd("occ ldap:set-config s01 ldapUuidUserAttribute 'email'"),
split_cmnd("occ ldap:set-config s01 ldapUuidUserAttribute 'auto'"),
split_cmnd("occ ldap:set-config s01 ldapUuidGroupAttribute 'auto'"),
split_cmnd("occ ldap:set-config s01 ldapLoginFilterUsername '1'"),
split_cmnd("occ ldap:set-config s01 ldapConfigurationActive '1'"),
])
}