baby-gnu / ad-formula

Join computer to an Active Directory

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ad-formula

Travis CI Build Status Semantic Release pre-commit

A SaltStack formula that join GNU/Linux and Windows systems to an Active Directory.

Table of Contents

General notes

See the full SaltStack Formulas installation and usage instructions.

If you are interested in writing or contributing to formulas, please pay attention to the Writing Formula Section.

If you want to use this formula, please pay attention to the FORMULA file and/or git tag, which contains the currently released version. This formula is versioned according to Semantic Versioning.

See Formula Versioning Section for more details.

If you need (non-default) configuration, please refer to:

Contributing to this repo

Commit messages

Commit message formatting is significant!!

Please see How to contribute for more details.

pre-commit

pre-commit is configured for this formula, which you may optionally use to ease the steps involved in submitting your changes. First install the pre-commit package manager using the appropriate method, then run bin/install-hooks and now pre-commit will run automatically on each git commit. :

$ bin/install-hooks
pre-commit installed at .git/hooks/pre-commit
pre-commit installed at .git/hooks/commit-msg

Special notes

None

Available states

ad.join

Meta-state (This is a state that includes other states).

This state will join a system to an Active Directory with a login and password.

It depends on:

ad.member

Meta-state (This is a state that includes other states).

Take all steps required to make the system an Active Directory member.

It depends on states related to the kernel, actually:

ad.member.linux

Meta-state (This is a state that includes other states).

Join a GNU/Linux system to an Active Directory.

It depends on:

ad.member.linux.package

Meta-state (This is a state that includes other states).

Manage packages required and conflicting with the join of the system to an Active Directory.

It depends on:

ad.member.linux.package.conflicts

Remove any conflicting packages with the tools used to join the Active Directory.

ad.member.linux.package.install

Install packages required to join the Active Directory.

ad.member.linux.config

Meta-state (This is a state that includes other states).

Configure the system in preparation of the Active Directory join.

It depends on:

ad.member.linux.config.krb5

Configure krb5.conf for Active Directory.

ad.member.linux.config.sssd

Configure the sssd service for the ad.realm, for example to enable or disable the fully qualified names and the pattern of home dirs fallback for users without the unixHomeDirectory LDAP attribute.

It hooks as watch_in to:

It depends on:

ad.member.linux.join

Join a GNU/Linux system to an Active Directory using the realm join command.

It depends on:

ad.member.linux.service

Meta-state (This is a state that includes other states).

Restart the sssd service.

ad.member.linux.service.running

Restart the sssd service.

It watches:

ad.member.windows

Meta-state (This is a state that includes other states).

Join a Microsoft Windows system to an Active Directory.

It depends on:

ad.member.windows.join

Join a Microsoft Windows system to an Active Directory and restart the system if required.

ad.leave

Meta-state (This is a state that includes other states).

Remove the system from an Active Directory with a login and password.

It depends on:

ad.member.clean

Meta-state (This is a state that includes other states).

Take all steps required to make the system leave an Active Directory.

It depends on states related to the kernel, actually:

ad.member.linux.clean

Meta-state (This is a state that includes other states).

Remove a GNU/Linux system from an Active Directory.

It depends on:

ad.member.linux.leave

Remove a GNU/Linux system from an Active Directory using realm leave.

ad.member.linux.config.clean

Remove the configuration in place.

ad.member.linux.package.clean

Remove required packages to join the Active Directory.

ad.member.windows.clean

Meta-state (This is a state that includes other states).

Remove a Microsoft Windows system from an Active Directory.

It depends on ad.member.windows.leave

ad.member.windows.leave

Remove a Microsoft Windows system from an Active Directory and reboot the system if required.

Testing

The testing requires a working Active Directory and is not actually automated.

About

Join computer to an Active Directory

License:Other


Languages

Language:Ruby 37.8%Language:HTML 32.3%Language:SaltStack 18.2%Language:JavaScript 8.9%Language:Shell 2.8%