summaryrefslogtreecommitdiffstats
path: root/ipaclient/remote_plugins/2_49/join.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipaclient/remote_plugins/2_49/join.py')
-rw-r--r--ipaclient/remote_plugins/2_49/join.py64
1 files changed, 64 insertions, 0 deletions
diff --git a/ipaclient/remote_plugins/2_49/join.py b/ipaclient/remote_plugins/2_49/join.py
new file mode 100644
index 000000000..dc0904dc4
--- /dev/null
+++ b/ipaclient/remote_plugins/2_49/join.py
@@ -0,0 +1,64 @@
+#
+# Copyright (C) 2016 FreeIPA Contributors see COPYING for license
+#
+
+# pylint: disable=unused-import
+import six
+
+from . import Command, Method, Object
+from ipalib import api, parameters, output
+from ipalib.parameters import DefaultFrom
+from ipalib.plugable import Registry
+from ipalib.text import _
+from ipapython.dn import DN
+from ipapython.dnsutil import DNSName
+
+if six.PY3:
+ unicode = str
+
+__doc__ = _("""
+Joining an IPA domain
+""")
+
+register = Registry()
+
+
+@register()
+class join(Command):
+ __doc__ = _("Join an IPA domain")
+
+ takes_args = (
+ parameters.Str(
+ 'cn',
+ cli_name='hostname',
+ doc=_(u'The hostname to register as'),
+ default_from=DefaultFrom(lambda : None),
+ # FIXME:
+ # lambda: unicode(installutils.get_fqdn())
+ autofill=True,
+ ),
+ )
+ takes_options = (
+ parameters.Str(
+ 'realm',
+ doc=_(u'The IPA realm'),
+ default_from=DefaultFrom(lambda : None),
+ # FIXME:
+ # lambda: get_realm()
+ autofill=True,
+ ),
+ parameters.Str(
+ 'nshardwareplatform',
+ required=False,
+ cli_name='platform',
+ doc=_(u'Hardware platform of the host (e.g. Lenovo T61)'),
+ ),
+ parameters.Str(
+ 'nsosversion',
+ required=False,
+ cli_name='os',
+ doc=_(u'Operating System and version of the host (e.g. Fedora 9)'),
+ ),
+ )
+ has_output = (
+ )