Andy Wilson
bc30203abe
docfix: grammar in docstring for sysctl module
2013-08-08 12:23:30 -05:00
Petr Svoboda
e2f20db534
Fix traceback in service module when svc_cmd is None
...
When service module is used on unsupported Linux system where init
script is used directly, LinuxService.svc_cmd is None so .endswith()
fails.
Fixes issue #3533
2013-08-08 14:24:20 +02:00
Michael Scherer
cfa5a0f94d
Add urpmi as a package manager for mandriva-based distribution
2013-08-04 00:03:50 +02:00
James Cammarata
e32a6110af
Removing skipped=True so the task is just marked as not-changed
2013-08-03 12:15:09 -05:00
James Cammarata
d98ad7b374
Set result to skipped when vol group is missing and lv state=absent
...
Fixes issue #3714 - lvol module state=absent fails (with error) if
the volume group doesn't exist
2013-08-02 20:32:56 -05:00
rishid
07ef8c4d84
Verify groups string is not empty before trying add user to groups
2013-08-01 21:19:11 -04:00
Brian Coca
0ae7bcf3e2
fixed bug from prev update
...
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-08-01 00:24:34 -04:00
Brian Coca
1e1f117886
whitespace updates on new lines
...
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-07-31 23:26:28 -04:00
Brian Coca
d8e8aa714e
now uses get_bin_path for lvg executables
...
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-07-31 22:32:41 -04:00
Michael DeHaan
8cc13590b4
Make exceptions handling python 2.4 compatible.
2013-07-29 13:27:16 -04:00
Michael DeHaan
fc9aa5f014
Continue on mount errors, don't fail the setup module.
2013-07-22 13:57:35 -04:00
Brian Coca
3f85a82ae9
use global to fail as its not in self
...
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-07-22 10:54:20 -04:00
Michael DeHaan
1acd9b6325
Update CHANGELOG
2013-07-21 10:12:28 -04:00
Michael DeHaan
e589365279
Merge branch 'iss_cron' of git://github.com/dirtyharrycallahan/ansible into dh_cron
2013-07-21 10:00:11 -04:00
Michael DeHaan
588b20c012
Merge pull request #3602 from bcoca/fine_tune_stat_exception
...
narrowed down exception
2013-07-20 09:45:31 -07:00
Michael DeHaan
3b3b600a98
Merge pull request #3470 from langemeijer/devel
...
Only append non_unique parameter if a uid is provided as well to user module
2013-07-20 09:11:52 -07:00
Brian Coca
b7b1c714f9
narrowed down exception we ignore and fail if any other unexpected one
...
crops up.
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-07-20 11:51:52 -04:00
Florian Tham
ceff31241b
fix fatal error when removing logical volumes
2013-07-19 10:59:11 +02:00
Antti Rasinen
7b8f24adda
Make zfs set_property accept values with embedded spaces
...
Converting the argument list to a string with ' '.join causes
the shell interpreter to misparse spaces in property values.
Since the zfs command does not need shell anywhere, using
a list instead of a string works just as well with run_command.
Fixes #3545 .
2013-07-16 14:01:14 +03:00
Antti Rasinen
7670572578
Fix zfs property parsing
...
Current property parser breaks when values contain spaces. Since
zfs get -H returns tab separated lines, it is better to explicitly
split on tabs than on whitespace.
2013-07-16 13:49:19 +03:00
trbs
38b6087495
fix missing json module for issue #3363 print JSON error as string instead
2013-07-15 16:50:31 +02:00
Brian Coca
80b9b01e97
now won't throw exception if we don't have permission to stat a mtab
...
entry on linux (weird chromebook issue)
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-07-14 22:59:24 -04:00
Michael DeHaan
8fe15f0a30
Merge pull request #3426 from trbs/services_sleep_option
...
sleep option for service module which adds a pauze between stopping and ...
2013-07-12 08:18:22 -07:00
Michael DeHaan
3a84254f6d
Merge pull request #3496 from johanwiren/bsd-ipv6-facts
...
Fix for populating default_ipv6 on BSD systems
2013-07-11 05:55:53 -07:00
Michael DeHaan
d1398594ce
Merge pull request #3497 from johanwiren/bsd-gateway
...
Updated setup module to collect gateway fact for BSD systems
2013-07-11 05:55:26 -07:00
Michael DeHaan
952760c605
Merge pull request #3388 from bcoca/fixed_user_create_doc
...
updated module docs to reflect 'correct' on_create vs on_creation
2013-07-11 05:34:37 -07:00
Johan Wirén
1c247c9eb4
Updated GenericBsdIfconfigNetwork to collect gateway
2013-07-11 00:05:53 +02:00
Johan Wirén
10e9194744
Fix for populating default_ipv6 on BSD systems
2013-07-10 22:54:33 +02:00
Joshua Lund
cc275ca2be
Added a new with_file example to the authorized_key documentation
2013-07-10 14:09:03 -06:00
Patrick Callahan
8f14ffe56b
Bug fixes and enhancements.
...
Bugs:
(1) no longer allow empty jobs
(2) strip the header added by crontab package used in openSuSE and SuSE
(3) try not to leak temp files when things go wrong
(4) issue returning job names under certain conditions
Enhancements:
(1) Allow all special times not just reboot.
(2) Fail earlier by performing more input validation
(3) Add feature to allow removing cron file under /etc/cron.d
ToDo:
(1) Validate times (minute, hour, ...)
(2) Strip white space from fields such as name and job such that name=foo equals name=' foo'.
(3) More testing
2013-07-09 03:21:40 +00:00
Brian Coca
0664e36aa2
fixed check mode
...
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-07-08 15:41:39 -04:00
Casper Langemeijer
922a71fced
Only append non_unique parameter if a uid is provided as well
2013-07-08 11:46:38 +02:00
Aaron Brady
efc4bc10d4
Make the CPU facts Hyperthreading aware
2013-07-03 16:25:35 +01:00
trbs
3b2173b6df
sleep option for service module which adds a pauze between stopping and starting a service using state=restarted. This helps for bad scripts that exist immediatly after signaling a process to stop.
2013-07-03 17:08:07 +02:00
Antti Rasinen
93fc3391fe
Fix service enable on FreeBSD
...
Some services have a knob (i.e. rc.conf setting) whose name
differs from that of the script. For example, lockd process
is controlled with a script called lockd, but the rc.conf
value is rpc_lockd_enable.
Fixes issue #3382 .
2013-07-03 14:52:23 +03:00
Brian Coca
9f75397310
updated module docs to reflect 'correct' on_create vs on_creation
...
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-06-30 20:32:05 -04:00
Michael DeHaan
15bf8a8398
Merge pull request #3315 from madduck/fix-service-updatercd-changed
...
Let update-rc.d set changed flag properly
2013-06-30 16:09:39 -07:00
Michael DeHaan
681696846a
Styling: semicolon
2013-06-30 18:56:03 -04:00
Michael DeHaan
fc8ffc1864
Styling: blank lines
2013-06-30 18:52:33 -04:00
Serge van Ginderachter
f000dcd526
add more support for different size formats
2013-06-24 22:37:31 +02:00
martin f. krafft
85b8538e0e
Expand usage of Python 2.6 if statement
...
Syntax like "'foo' if bar else 'baz'" is not supported by all Python
versions targetted by Ansible. Hence we break it up.
Signed-off-by: martin f. krafft <madduck@madduck.net>
2013-06-23 09:19:27 +02:00
martin f. krafft
3df2e15277
Let update-rc.d set changed flag properly
...
When update-rc.d is used to enable/disable service, the changed flag was
always true (see #2189 ). This commit fixes that.
Signed-off-by: martin f. krafft <madduck@madduck.net>
2013-06-22 20:04:37 +02:00
Michael DeHaan
3f8aa8aec5
Fix up some module docs formatting errors.
2013-06-19 22:37:09 -04:00
Patrick Callahan
b5b862fe6f
bug fix: modify get_device_facts to handle servers with multiple pci domains
...
On machines with multiple pci domains get_device_facts would fail to
find a matching pci device causing setup to fail. Also on some platforms
there is additional information between the pci information and 'host'.
Modified get_device_facts to call lspci with the -D option and modified
the regex to account for the pci domain and to be more selective.
2013-06-18 22:48:05 -04:00
Michael DeHaan
575e052c6c
Merge pull request #3147 from toshywoshy/setup_mtab_without_bind
...
changed get_mount_facts to ignore mount types 'none'
2013-06-18 17:56:49 -07:00
Michael DeHaan
61ac8d03af
Clarify module docs
2013-06-18 20:19:29 -04:00
Michael DeHaan
51ba3d8c3d
Merge pull request #3230 from sayap/openrc
...
Add OpenRC support to the service module.
2013-06-18 17:13:06 -07:00
Brian Coca
c9c7b01620
now mount/unmount are searched for instead of hardcoded
...
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-06-17 17:01:35 -04:00
Yap Sok Ann
bcca609bc6
Add OpenRC support to the service module.
2013-06-17 11:29:48 +08:00
Michael DeHaan
fe9849530c
Merge pull request #3120 from chrisgardner/solaris-os-facts
...
Add Solaris O/S distribution facts
2013-06-16 20:18:43 -07:00
Michael DeHaan
2eb3a9a3c9
Resolve docs conflict.
2013-06-16 22:48:11 -04:00
Michael DeHaan
572f49b11f
Fix merge conflict.
2013-06-16 22:47:29 -04:00
Michael DeHaan
c3544de1df
Merge pull request #3228 from skvidal/facts.d
...
first cut and docs for facts.d mechanism for setup module
2013-06-16 19:46:02 -07:00
Michael DeHaan
936e61fc28
Merge pull request #3181 from melodous/devel
...
HP-UX virtualization facts
2013-06-16 19:26:07 -07:00
trbs
a4223e119d
fixed x-bits in git
2013-06-16 22:22:16 -04:00
Michael DeHaan
78fdedd490
Merge remote branch 'origin' into devel
...
Conflicts:
library/web_infrastructure/django_manage
2013-06-16 22:15:30 -04:00
Michael DeHaan
f0d66f0cda
Merge pull request #3176 from jpmens/sol-epoch
...
setup epoch time doesn't have tics on Python 2.6.4 (Solaris).
2013-06-16 19:06:19 -07:00
Seth Vidal
36df7e8c95
cut and docs for facts.d mechanism for setup module
2013-06-15 18:31:31 -04:00
Jan-Piet Mens
5c69918d53
DOCS: standardize on EXAMPLES (a.k.a. Docs-JumboPatch JetLag Edition)
...
Migrated all examples: in DOCUMENTATION=''' string to standalone EXAMPLES=''' string
Added deprecation warning to moduledev.rst and remove deprecated example from it
Fixed up a few typos and uppercased some acronyms.
add consistency to how EXAMPLES are formatted
2013-06-15 20:54:25 +02:00
Raul Melo
f9f0f5ce2c
HP-UX virtualization facts
2013-06-12 18:59:20 +02:00
Jan-Piet Mens
f6521d88f5
setup epoch time doesn't have tics on Python 2.6.4 (Solaris).
2013-06-11 09:13:32 +02:00
Jan-Piet Mens
3f301fd439
Protect None value in setup module
2013-06-11 07:08:55 +02:00
Michael DeHaan
790a145f6c
Use get_bin_path for blkid and add some aliases to the filesystem module.
2013-06-10 10:39:19 -04:00
Joshua Lund
51c7441244
Updates to the authorized_key documentation
...
* Clarified the meaning of 'user'
* Changed 'sshdir' to 'path' in the example
* 'sshdir' is used internally in the module, but the argument is 'path'
* Made the capitalization consistent in the descriptions
2013-06-07 15:43:42 -06:00
Toshaan Bharvani
f76043f404
changed get_mount_facts to ignore mount types 'none'
2013-06-07 16:55:33 +02:00
Raul Melo
2475bc416c
Facts for HP-UX
2013-06-05 14:01:18 +02:00
Chris Gardner
2ba47318dc
Use first line from /etc/release in "distribution_release" for consistency across Solaris and derivatives.
2013-06-03 22:33:01 +01:00
Michael DeHaan
788680a15d
Merge branch 'devel' of git://github.com/trbs/ansible into more_users
2013-06-03 11:50:17 -04:00
Michael DeHaan
c3ff4ccb35
These options to bypass the check code seem to need to occur before said checks.
2013-06-01 18:32:02 -04:00
Chris Gardner
f0a4a17ff6
Add Solaris O/S facts "distribution" and "distribution_*"
2013-06-01 20:32:28 +01:00
Michael DeHaan
caa07e7fab
pep8 fixes
2013-06-01 12:29:03 -04:00
Michael DeHaan
15560c9801
Fix module labelled incorrectly.
2013-06-01 12:25:24 -04:00
Michael DeHaan
d434252ba4
Docs standardization
2013-06-01 12:20:45 -04:00
Michael DeHaan
417be6f81e
Docs standardization
2013-06-01 12:16:24 -04:00
Michael DeHaan
b9e72cdd98
Warn when there is a space in the mount module opts parameter.
2013-06-01 11:33:17 -04:00
trbs
3b3afe2283
Add support for Open and NetBSD platforms for user and group modules, including a new login_class parameter for FreeBSD, OpenBSD and NetBSD.
2013-05-31 20:53:37 -04:00
Michael DeHaan
9122efb24a
Merge pull request #3083 from mvo5/feature/facts-add-statvfs
...
add "size_{total,free}" to the "mount" facts
2013-05-31 14:22:58 -07:00
Michael DeHaan
049b77be6d
Merge pull request #3076 from mmoya/userspace-arch-facts
...
Provide userspace_{architecture,bits} facts
2013-05-31 14:20:38 -07:00
Michael DeHaan
514f18acac
Merge branch 'solaris-network-facts' of git://github.com/chrisgardner/ansible into devel
2013-05-31 17:16:13 -04:00
Michael DeHaan
47b9db0d98
Remove debug statement in previous patch.
2013-05-31 17:13:54 -04:00
Michael DeHaan
eec53347b5
Merge branch 'devel' of git://github.com/trbs/ansible into groups
2013-05-31 17:13:41 -04:00
Stephen Fromm
43d96ba335
cleanup to dmi fact discovery
...
When invoking dmidecode, first use module.get_bin_path() and secondly
use module.run_command.
Remove sub function execute() from get_dmi_facts().
Simplify get_dmi_facts() by only using two mechanisms to determine dmi
facts: first try /sys/devices/virtual/dmi and if not available, use
dmidecode executable.
2013-05-31 17:10:34 -04:00
Michael DeHaan
d078ad5a13
Merge pull request #3068 from lorin/authkey-default
...
authorized_key: Set manage_dir default value
2013-05-31 13:16:44 -07:00
Michael DeHaan
4afc0a5c03
Merge pull request #3044 from chrisgardner/solaris_facts
...
Solaris facts
2013-05-31 13:15:58 -07:00
Michael DeHaan
69d514100c
Refine error message.
2013-05-31 15:23:24 -04:00
Michael DeHaan
0b30c74e86
Merge branch 'rc.d-systemd' of git://github.com/glensc/ansible into sysd
2013-05-31 15:20:48 -04:00
Michael Vogt
6acf9a9b3b
use statvfs.f_bavail to match the output of "df -B1"
2013-05-31 21:20:40 +02:00
Michael Vogt
73a12b04a4
add "size_{total,free}" to the "mount" facts
2013-05-31 21:01:45 +02:00
Maykel Moya
d0843a7f55
Provide userspace_{architecture,bits} facts
...
When running inside a chroot userspace architecture might not
match that of the actual host.
This patch provides userspace_bits as reported by python's
platform.architecture(). Also provides userspace_architecture fact
if host is an x86 machine.
2013-05-31 12:24:43 +02:00
Chris Gardner
1b8adab2cc
Add Solaris network facts. IPv4 and IPv6 both working.
2013-05-31 00:57:23 +01:00
trbs
b537aff586
Fix for #3062 additional groups should only be added once.
...
Also consolidated duplicate groups code into one get_groups_set() method.
Removed unused call to user_group_membership.
Removed sorting operations on set functions cause sets are inherently unordered.
Minor style improvements to match the rest of the code.
The new function will make the order of group names passed to the system command less determistic.
Which was already the case for modify_user_usermod() but not for other methods.
It will also strip out duplicate group names automatically which was not always the case previously.
2013-05-30 19:18:18 -04:00
Lorin Hochstein
8c9cceacbf
authorized_key: Set manage_dir default value
...
This commit fixes a bug where the authorized_key module causes
the ~user/.ssh directory to be owned by root instead of the user,
when the manage_dir argument is not specified.
If the manage_dir argument was not specified, the module behaved as if
manage_dir was set to false, even though it's supposed to default to
true.
This module assumed that an optional argument, with no default
specified, will not be present in the module.params dictionary.
What actually seems to happen is that the argument does appear in
the module.params dictionary with a value of None.
The upside is that this line was evaluating to None instead of
true:
manage_dir = params.get("manage_dir", True)
I fixed the problem in this particular module by explicitly specifying
the default value for the manage_dir arugment. But if this bug
occurred because of a change in behavior in AnsibleModule, then other
modules may be broken as well.
2013-05-30 16:16:14 -04:00
Michael DeHaan
ad1a02aa55
Merge pull request #3064 from sfromm/issue2990
...
Verify /proc/modules is readable (issue #2990 )
2013-05-30 11:12:30 -07:00
Stephen Fromm
00b3a450c7
Verify /proc/modules is readable (issue #2990 )
2013-05-30 10:25:48 -07:00
Stephen Fromm
3127bab6d6
Use get_bin_path to find mkfs command (issue #2983 )
2013-05-30 10:25:35 -07:00
Chris Gardner
2b71ab6765
Fix typo. Solaris 9 should now correctly ignore 'brand' and use 'implementation'.
2013-05-30 08:51:03 +01:00
Chris Gardner
88115f4ab2
TODO: Separate IPv4 and IPv6
2013-05-30 08:39:11 +01:00
Jiří Kubíček
5cb0525430
Add some FreeBSD facts
...
added:
* ansible_distribution
* ansible_distribution_release
* ansible_distribution_version
* ansible_os_family
* ansible_pkg_mgr
* ansible_ssh_host_key_ecdsa_public
Also adds ECDSA public key for all plaforms.
2013-05-30 01:34:33 +02:00
Chris Gardner
6809b56233
Add Solaris network facts. IPv6 details overwrite IPv4 per interface, needs further work.
2013-05-30 00:06:57 +01:00
Chris Gardner
f482649cbb
Add clock speed to processor description for SPARC CPU.
2013-05-29 21:00:21 +01:00
Chris Gardner
68959e7f92
Use 'implementation' if 'brand' not available (Solaris 9). Add CPU socket/core counting.
2013-05-29 18:54:43 +01:00
Michael DeHaan
a581077b4d
Merge branch 'facter-fix' of git://github.com/flyapen/ansible into devel
2013-05-29 10:00:20 -04:00
Guillaume Lasmayous
1c0e01a72b
Implement NetBSD-specific subclass of Hardware in the setup module.
...
Defines memory and CPU facts:
- memfree_mb
- memtotal_mb
- swapfree_mb
- swaptotal_mb
- processor (a list)
- processor_cores
- processor_count
- devices
As a matter of fact, on NetBSD, it is possible to get memory, swap and
processor facts exactly as on Linux. Tested on NetBSD-5, NetBSD-6 and
NetBSD-6.1 (without Linux emulation).
2013-05-29 09:37:46 -04:00
Chris Gardner
9ca7165f88
Use kstat for Solaris CPU info
2013-05-28 22:44:06 +01:00
Chris Gardner
66c10410ec
Use kstat for Solaris CPU info
2013-05-28 22:36:49 +01:00
Kristof Keppens
c5b40ca2ff
change fix to lookup path with get_bin_path
2013-05-27 07:38:17 +02:00
Michael DeHaan
698b2fe9c5
Merge pull request #2992 from SirScott/service_pattern
...
Fixes #2991 : Service module pattern argument ignored.
2013-05-24 19:58:42 -07:00
Scott Sturdivant
922a1efbc0
Fixes #2924 : User creation always reports 'changed'
2013-05-23 13:43:23 -06:00
Scott Sturdivant
b274fb9774
Fixes #2991 : Service module pattern argument ignored.
2013-05-23 09:39:26 -06:00
Kristof Keppens
e2e10c1977
fix for facter being installed in a different location
2013-05-23 11:21:01 +02:00
Elan Ruusamäe
d3a2b1dbbb
no need to init None to None
2013-05-19 00:20:10 +03:00
Michael DeHaan
328065506e
Merge pull request #2941 from bcoca/setup_bin
...
no uses get_bin_path for 2nd use of ip tool
2013-05-18 13:22:24 -07:00
Michael DeHaan
39673fe8c0
Merge pull request #2940 from madema/patch-3
...
-o and -r option don't exist on AIX
2013-05-18 13:21:48 -07:00
Ton Kersten
8926684942
Fix issue 2906
2013-05-18 15:57:10 -04:00
Brian Coca
8d6e18fc90
no uses get_bin_path for 2nd use of ip tool (fixes reported issue with openwrt)
...
module needs this added to many tool invokations, but his is a start
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-05-16 08:32:49 -04:00
madema
58d59c180d
-o and -r option don't exist on AIX
2013-05-16 14:30:42 +02:00
Michael DeHaan
6b4f09d7dc
Style fix.
2013-05-11 17:21:49 -04:00
Michael DeHaan
584508dda6
Merge pull request #2866 from madema/patch-2
...
Fixed an error in the get_cpu_facts of the AIX class
2013-05-11 11:10:17 -07:00
Michael DeHaan
dab846a631
Merge pull request #2865 from madema/patch-1
...
Added AIX class in the service module to control AIX SRC processes.
2013-05-11 11:09:41 -07:00
Michael DeHaan
53db51a0a2
Merge pull request #2863 from lonerr/freebsd-group
...
FreeBSD group operations is now supported properly.
2013-05-11 11:08:13 -07:00
Michael DeHaan
cb54922bcd
Merge pull request #2862 from lonerr/freebsd-user
...
Fixed errors in FreeBSD user manipulations.
2013-05-11 11:07:32 -07:00
Michael DeHaan
67e67bca1f
Change filesystem module message.
2013-05-11 14:03:40 -04:00
Michael DeHaan
63e510a632
Merge pull request #2853 from abulimov/module_mkfs
...
Module filesystem
2013-05-11 11:02:43 -07:00
Elan Ruusamäe
6949a9fbe4
LinuxService: avoid enforcing systemd even if init.d script was found
2013-05-11 13:24:00 +03:00
madema
02e41f3e56
Update service
2013-05-10 18:16:23 +03:00
madema
cf4dbf1f40
Fixed an error in the get_cpu_facts of the AIX class
...
assumed proc0 as the first processor but can be different in a LPAR environment
2013-05-08 16:13:13 +03:00
madema
f7c3b73336
Added AIX class in the service module to control AIX SRC processes.
2013-05-08 16:10:22 +03:00
lonerr
dcb22d1760
FreeBSD group operations is now supported properly.
2013-05-08 13:36:55 +04:00
lonerr
b2db6483ac
Fixed errors in FreeBSD user manipulations.
2013-05-08 13:03:18 +04:00
Oleg
3531fbdb29
fix for authorized_key: skip chown and chmod if authorized_key_file is link
2013-05-08 01:47:41 +02:00
Alexander Bulimov
f4de40fc43
renamed mkfs and moved to system/filesystem
2013-05-06 18:08:38 +04:00
Luciano Cavalheiro da Silva
d18d2de18e
Fix #2836 . Ensure proper handling of option "system=yes" in module "group".
2013-05-04 21:24:02 -03:00
rektide
4f21dc4cd1
Duplicate pull #2803 in ipv6, fixing setup module's handling of venet & unknown interface types.
2013-05-02 17:19:22 -04:00
Michael DeHaan
2cf30148ba
Test for the existance of a file that might not be present on older RHEL.
2013-04-30 09:26:25 -04:00
James Mills
efc5a83f66
Fixed setup module to accomodate venet interfaces (OpenVZ)
2013-04-29 10:08:24 +10:00
Michael DeHaan
391fb98ee2
Allow modules to be categorized, and also sort them when generating the documentation.
2013-04-28 15:03:45 -04:00