Commit Graph

1578 Commits

Author SHA1 Message Date
Mitchell Hashimoto 54de2e3c6f providers/docker: docker-attach command for following output 2014-04-21 13:54:44 -07:00
Mitchell Hashimoto b655b6d910 providers/docker: remove TODO 2014-04-21 13:54:41 -07:00
Mitchell Hashimoto 144c874b5a providers/docker: process-level lock on copying default Vagrantfile 2014-04-21 13:54:40 -07:00
Mitchell Hashimoto bed34a730b provisioners/docker: fix module name for new docker provider 2014-04-21 13:54:35 -07:00
Mitchell Hashimoto 8c7ab333a0 Squash the f-docker-hostmachine branch.
Initial work

commands/up: make sure all names to with_target_vms are strings

providers/docker: create a docker host VM if needed

providers/docker: executor abstraction for driver to eventually support remote

providers/docker: vagrant executor

providers/docker: support creating the machine

providers/docker: status works if host VM is gone

providers/docker: use start fence to get real docker output

core: Call preserves stack ordering

core: support Message post option

providers/docker: Guard some features with HasSSH checks

providers/docker: much better messaging around create/destroy

providers/docker: output the container ID on create

providers/docker: copy the hostmachine Vagrantfile to the data dir

providers/docker: should make host machine before any up action

providers/docker: HandleBox before the host machine

providers/virtualbox: functional_vboxsf to disable vboxsf

providers/virtualbox: synced folder usable method should take 2 args

providers/docker: default machine name to :default
2014-04-21 13:54:33 -07:00
Mitchell Hashimoto 2b07dec059 core: Use the MachineIndex#vagrant_env method 2014-04-21 13:54:31 -07:00
Mitchell Hashimoto 09ff31e3a3 commands/global-status: add --prune flag 2014-04-21 13:54:29 -07:00
Mitchell Hashimoto 7c8053cb2b hosts/windows: don't remove the rdp file, race condition 2014-04-21 13:54:21 -07:00
Mitchell Hashimoto 5b5f10e175 commands/rdp: config 2014-04-21 13:54:20 -07:00
Mitchell Hashimoto 3d0a2959cd commands/rdp: nicer output 2014-04-21 13:54:19 -07:00
Mitchell Hashimoto 8698ebeff6 hosts/windows: use the port when connecting 2014-04-21 13:54:18 -07:00
Mitchell Hashimoto 5b960efcb1 commands/rdp: no need fo rthe guest cap 2014-04-21 13:54:17 -07:00
Mitchell Hashimoto 617cf630b1 commands/rdp: error if RDP info can't be detected 2014-04-21 13:54:16 -07:00
Mitchell Hashimoto 76a7c63f8b guests/windows: detect the port for RDP 2014-04-21 13:54:15 -07:00
Mitchell Hashimoto 7705ad76c6 guests/windows: use the public_address cap 2014-04-21 13:54:14 -07:00
Mitchell Hashimoto 993256643d guests/windows: rdp_info cap 2014-04-21 13:54:13 -07:00
Mitchell Hashimoto 0fa07637f9 commands/rdp: execute propre capabilities 2014-04-21 13:54:11 -07:00
Mitchell Hashimoto 746b568176 hosts/windows: rdp_client cap 2014-04-21 13:54:10 -07:00
Mitchell Hashimoto de7b4bbdc1 commands/rdp: basic skeleton 2014-04-21 13:54:09 -07:00
Mitchell Hashimoto 2929f7a853 provisoiners/chef: windows command builder 2014-04-21 13:54:08 -07:00
Mitchell Hashimoto 7022b1c29d provisioners/chef: command builder for Linux 2014-04-21 13:54:06 -07:00
Mitchell Hashimoto 909cda4bd1 provisioners/chef: reinit net shares on Windows guests 2014-04-21 13:54:05 -07:00
Mitchell Hashimoto 427d49402d provisioners/cfengine: fix typo 2014-04-21 13:54:04 -07:00
Mitchell Hashimoto 72030d2180 Note provisioners that don't work on Windows guests 2014-04-21 13:54:02 -07:00
Mitchell Hashimoto bd51c16700 provisioners/puppet: execute properly with WinRM 2014-04-21 13:54:00 -07:00
Mitchell Hashimoto 1a0cb9b4c1 privisioners/puppet: wait for reboot on Windows 2014-04-21 13:53:59 -07:00
Mitchell Hashimoto bec2cbbf4d provisioners/shell: check for winrm should be on machine config 2014-04-21 13:53:56 -07:00
Mitchell Hashimoto 4145aa6bcd privisioners/shell: wait for reboot if we can 2014-04-21 13:53:54 -07:00
Mitchell Hashimoto 4fc6fbeef6 privisioners/shell: fix syntax error 2014-04-21 13:53:53 -07:00
Mitchell Hashimoto 286fd2f2f8 provisioners/shell: friendly output if winrm shell provisioning 2014-04-21 13:53:52 -07:00
Mitchell Hashimoto bddc7928ad provisioner/shell: proper extension on temporary file 2014-04-21 13:53:50 -07:00
Mitchell Hashimoto 89671974cf provisioners/shell: handle comm output in a uniform way 2014-04-21 13:53:49 -07:00
Mitchell Hashimoto cde5d0bafb privisioners/shell: execute windows script 2014-04-21 13:53:48 -07:00
Mitchell Hashimoto aca8c4f8f3 provisioners/shelL: don't replace windows lineendings for WinRM 2014-04-21 13:53:47 -07:00
Mitchell Hashimoto 15fe061004 provisioners/shell: cause provision_winrm if winrm 2014-04-21 13:53:46 -07:00
Mitchell Hashimoto abd4185565 guests/freebsd: fix network name for vtnet 2014-04-21 13:53:45 -07:00
Mitchell Hashimoto 2057d513cb Update CHANGELOG 2014-04-21 13:53:44 -07:00
Maximilian Fischer a7b70dcf70 OpenBSD support for virtio interfaces
- When using KVM as provider you were not able to configure network
  interfaces that use virtio, because the interface name was strictly
  set to 'em'
2014-04-21 13:53:42 -07:00
Mitchell Hashimoto 96971194bc update CHANGELOG 2014-04-21 13:53:41 -07:00
Doug Stevenson cc343d1a7d Add config for FreeBSD guest plugin. Allow device to be configurable 2014-04-21 13:53:39 -07:00
Mitchell Hashimoto ba1676b232 providers/hyperv: fix tests and bug with usable? 2014-04-21 13:53:36 -07:00
Mitchell Hashimoto 1c29c39f1b core: generalize the autostart stuff so we don't have a bunch of specials 2014-04-21 13:53:35 -07:00
Mitchell Hashimoto d7a009f447 style 2014-04-21 13:53:34 -07:00
Mitchell Hashimoto 740652aef9 providers/hyperv: usable test 2014-04-21 13:53:09 -07:00
Mitchell Hashimoto 967f7bce1a providers/virtualbox: usability test 2014-04-21 13:53:08 -07:00
Mitchell Hashimoto f2bd6988b6 providers/docker: boxes are optional 2014-04-21 13:53:06 -07:00
Mitchell Hashimoto ab2cae2379 providers/docker: synced folder usable? raises error, tests
/cc @fgrehm
2014-04-21 13:53:05 -07:00
Mitchell Hashimoto 2e13feb130 providers/docker: Clean up config and make a spec 2014-04-21 13:53:04 -07:00
Mitchell Hashimoto 61ffa53134 kernel/v2: boxes can be optional if a provider says so
/cc @fgrehm - For the DOcker provider, we can now make boxes optional. :)
No more dummy boxes!
2014-04-21 13:53:03 -07:00
Mitchell Hashimoto 316aaa69fe kernel/v2: box setting should be new-style 2014-04-21 13:53:01 -07:00
Mitchell Hashimoto ac5a0cf326 commands/ssh-config: work without target into multi-machine env [GH-2844] 2014-04-21 13:52:59 -07:00
Mitchell Hashimoto 485422640e core: delete the preserve_order option so it doesn't invalidate 2014-04-21 13:52:31 -07:00
Mitchell Hashimoto aad8e7f80d core: provision "once" or "always" [GH-2421] 2014-04-21 13:52:30 -07:00
Mitchell Hashimoto f6fb9016a1 core: can specify a "post_up_message" [GH-1968] 2014-04-21 13:52:28 -07:00
Fabio Rehm e51c5530d7 providers/docker: Remove retryable around `docker run` as it seems that it is no longer needed 2014-04-21 13:51:48 -07:00
Fabio Rehm d705c48ef3 providers/docker: Implement public_address capability for `vagrant share` 2014-04-21 13:51:47 -07:00
Fabio Rehm c0aa05c62a providers/docker: Handle forwarded port collisions 2014-04-21 13:51:46 -07:00
Fabio Rehm e5375715ef providers/docker: Update driver to docker 0.9 2014-04-21 13:51:45 -07:00
Fabio Rehm de588ba82c providers/docker: Remove old README 2014-04-21 13:51:44 -07:00
Fabio Rehm 46cbeb38f0 providers/docker: Make use of Action::Builtin::IsState and remove provider specific actions 2014-04-21 13:51:42 -07:00
Fabio Rehm 29f2d9b09d providers/docker: Remove custom Action::Message 2014-04-21 13:51:41 -07:00
Fabio Rehm 15605b1a81 providers/docker: Switch to new HandleBox middleware 2014-04-21 13:51:39 -07:00
Fabio Rehm eaa4be8869 providers/docker: Remove Vagrant::Action shortcuts as we are on core now 2014-04-21 13:51:38 -07:00
Fabio Rehm c09ce4bbbd providers/docker: Add description 2014-04-21 13:51:37 -07:00
Fabio Rehm 87d2f35718 providers/docker: Get rid of some explicit requires in favor of autoloading 2014-04-21 13:51:35 -07:00
Fabio Rehm 3325bce2d0 providers/docker: Lazy load locales 2014-04-21 13:51:34 -07:00
Fabio Rehm 8c8826fe09 providers/docker: Get rid of vagrant version check from old plugin 2014-04-21 13:51:33 -07:00
Fabio Rehm e79df6caaa providers/docker: Move code out of lib dir so that Vagrant can pick it up 2014-04-21 13:51:32 -07:00
Fabio Rehm 5a60e568ce providers/docker: Import code from https://github.com/fgrehm/docker-provider with some initial tweaks 2014-04-21 13:51:31 -07:00
Fabio Rehm efc1122c42 provisioners/docker: Change to VagrantPlugins::DockerProvisioner namespace 2014-04-21 13:51:30 -07:00
Mitchell Hashimoto 47b5a3fcdb communicators/winrm: silence warnings loading winrm
/cc @sneal - I silenced warnings using the built-in util. Also, can you
see if we load here if that load error goes away?
2014-04-21 13:51:27 -07:00
Mitchell Hashimoto 9a16af10ad core: Use Machine#state wherever possible so we update the index 2014-04-21 13:51:23 -07:00
Mitchell Hashimoto e14216da4e commands/global-status: initial go at it 2014-04-21 13:51:22 -07:00
Mitchell Hashimoto 7ccf7fadf2 providers/virtualbox: make ID os-friendly for Windows 2014-04-21 13:51:12 -07:00
Mitchell Hashimoto a908b191b0 guests/windows: fix network configuring 2014-04-21 13:51:11 -07:00
Mitchell Hashimoto d600e83e6d guests/windows: configure networks 2014-04-21 13:51:09 -07:00
Mitchell Hashimoto d86a9ecade guests/windows: fix invalid templating 2014-04-21 13:51:08 -07:00
Mitchell Hashimoto b81f430f31 guests/windows: initial vagrant-windows extraction 2014-04-21 13:51:06 -07:00
Mitchell Hashimoto 7223e29330 communicators/winrm: fix powershell execution 2014-04-21 13:51:05 -07:00
Mitchell Hashimoto 21ac0810fd communicators/winrm: more tests 2014-04-21 13:51:04 -07:00
Mitchell Hashimoto bb9f0aef32 communicators/winrm: autodetect port based on forwarded ports 2014-04-21 13:51:03 -07:00
Mitchell Hashimoto 40d89cf5ea kernel/v2: configurable communicator (doesn't do anything yet) 2014-04-21 13:51:01 -07:00
Mitchell Hashimoto eebebd8837 communicators/winrm: Config unit tests (a little) 2014-04-21 13:50:59 -07:00
Mitchell Hashimoto 2a8a04ebb9 communicators/winrm: initial import from vagrant-windows 2014-04-21 13:50:58 -07:00
Ramon de la Fuente f6a5e20688 Add autostart as an option for vagrant boxes
Added specs for the environment and vagrantfile. Added a methd to retrieve
autostart_machine_names. Changed the plugin up/command to use autostart_machine_names
when no argument was given to the command.
2014-04-21 13:50:57 -07:00
Kenny Rasschaert fc95e77237 provisioners/salt: error if minion_config missing 2014-04-19 23:24:30 +02:00
Mitchell Hashimoto ceb90c5aac command/rsync-auto: proper require 2014-04-18 21:17:08 -07:00
Jing Chan 97c8919f26 Small fix to hyper-v provision action 2014-04-17 17:48:03 -04:00
Mitchell Hashimoto 7749b8fba4 providers/hyperv: provision action [GH-3494] 2014-04-17 13:59:13 -07:00
Nikhil Benesch ee5d8e2358 guests/linux: rsync chown if either user or group incorrect [GH-3485] 2014-04-15 16:55:49 -04:00
Mitchell Hashimoto d0b0d5635c provisioners/docker: debian install should apt-get update 2014-04-15 13:04:07 -07:00
Mitchell Hashimoto 544f404037 provisioners/docker: configure autostart works if OS can't check status 2014-04-15 12:18:37 -07:00
Mitchell Hashimoto ac8d54132b provisioners/docker: UPDATE CHANGELOG 2014-04-15 12:15:14 -07:00
Henry Hsu 91555d0a86 Fixes not enough time for docker restart before continuing on to next
provisioning step
2014-04-15 11:32:05 -07:00
Mitchell Hashimoto 20473fe4ca core: allow overriding default SSH port [GH-3474] 2014-04-15 10:37:08 -07:00
Mitchell Hashimoto ae8be9356e commands/box/update: show current version [GH-3467] 2014-04-14 18:55:22 -07:00
Mitchell Hashimoto 0fc7d59222 guests/coreos: fix test for docker daemon running 2014-04-14 17:01:00 -07:00
Mitchell Hashimoto 8a9bbdb71a provisioners/docker: fix linux cap for daemon running 2014-04-14 17:00:12 -07:00
Mitchell Hashimoto 88683221f4 synced_folders/rsync: force NIO4R_PURE 2014-04-14 10:18:50 -07:00
Mitchell Hashimoto 00962c7c2a commands/box/repackage: better error if box not found 2014-04-12 18:00:33 -07:00
Mitchell Hashimoto adca39b471 commands/box/repackage: works with new stuff [GH-3372] 2014-04-12 17:57:51 -07:00
Mitchell Hashimoto 77c286f1af Merge pull request #3452 from berendt/box_update_sort_versions
command/box/update: update from latest version
2014-04-12 15:25:22 -07:00
Gilles Cornu 7ed17ae9ed provisioners/ansible: use strict boolean options
With this change, the ansible provisioner fully complies with
the current user documentation.
2014-04-12 13:48:15 +02:00
Christian Berendt 764c007a93 When there are multiple versions of a box are available it should be checked if an update is available for the highest version.
Example:

There are version 0.2.10 and 0.2.11 available. The latest update is version 0.2.12.

```
berendt/ubuntu-14.04-amd64          (virtualbox, 0.2.10)
berendt/ubuntu-14.04-amd64          (virtualbox, 0.2.11)
```

Without this patch it will be checked if a higher version than 0.2.10 is available.

```
Checking for updates to 'berendt/ubuntu-14.04-amd64'
Version constraints: > 0.2.10
Provider: virtualbox
Updating 'berendt/ubuntu-14.04-amd64' with provider 'virtualbox' from version
'0.2.10' to '0.2.12'...
Loading metadata for box 'https://vagrantcloud.com/berendt/ubuntu-14.04-amd64'
Adding box 'berendt/ubuntu-14.04-amd64' (v0.2.12) for provider: virtualbox
Downloading: https://vagrantcloud.com/berendt/ubuntu-14.04-amd64/version/23/provider/virtualbox.box
Successfully added box 'berendt/ubuntu-14.04-amd64' (v0.2.12) for 'virtualbox'!
```

with this patch it will be checked if a higher version than 0.2.11 is available (the expected behaviour).

```
Checking for updates to 'berendt/ubuntu-14.04-amd64'
Version constraints: > 0.2.11
Provider: virtualbox
Updating 'berendt/ubuntu-14.04-amd64' with provider 'virtualbox' from version
'0.2.11' to '0.2.12'...
Loading metadata for box 'https://vagrantcloud.com/berendt/ubuntu-14.04-amd64'
Adding box 'berendt/ubuntu-14.04-amd64' (v0.2.12) for provider: virtualbox
Downloading: https://vagrantcloud.com/berendt/ubuntu-14.04-amd64/version/23/provider/virtualbox.box
Successfully added box 'berendt/ubuntu-14.04-amd64' (v0.2.12) for 'virtualbox'!
```
2014-04-12 11:03:04 +02:00
Mitchell Hashimoto 1144217e2d Merge pull request #3436 from gildegoma/ansible-inventory-path
provisioners/ansible: refer to directory that contains the generated inventory file
2014-04-11 21:16:14 -07:00
Mitchell Hashimoto 374d1c495a provisioners/docker: auto-assigned name shouldn't have / [GH-3216] 2014-04-11 18:50:02 -07:00
Mitchell Hashimoto ad8d133293 communicators/ssh: throttle warnings [GH-3442] 2014-04-11 16:17:17 -07:00
Mitchell Hashimoto e972bbf32a synced_folders/rsync: change wording on no paths watching 2014-04-11 14:56:35 -07:00
Mitchell Hashimoto 75bc1c74b6 Merge pull request #3446 from brenttheisen/rsync_auto_nothing_to_watch_pr
command/rsync-auto: message and exit rsync-auto immediately if there is nothing to watch.
2014-04-11 14:53:42 -07:00
Brent Theisen 7b27fa31ce Print message and exit rsync-auto immediately if there is nothing to watch. 2014-04-11 16:49:58 -05:00
Mitchell Hashimoto 77c92d0d11 communicators/ssh: only show warnings after a few attempts [GH-3442] 2014-04-11 14:36:19 -07:00
Gilles Cornu 0098b7604d provisioners/ansible: refer to inventory directory
By referring the directory that contains the generated inventory file,
users can easily provide more settings with additional files stored in
the same directory.
2014-04-11 08:20:32 +02:00
Mitchell Hashimoto b97c509c15 Remove this, supposed to be in vagrant-next 2014-04-10 13:43:15 -07:00
Mitchell Hashimoto f47213f9b2 guests/coreos: docker_daemon_running cap [GH-3425] 2014-04-10 13:42:12 -07:00
Mitchell Hashimoto 541ebd8935 kernel/v2: clear ID field so its not passed to provisioner [GH-3424] 2014-04-10 08:42:11 -07:00
Mitchell Hashimoto e5d1d681d9 Update CHANGELOG 2014-04-09 14:17:51 -07:00
Bernhard Morgenstern 247a2470c0 Fixed error with empty shell provisioner
`read` returns nil on empty files, so the call to `valid_encoding` fails.
2014-04-09 22:56:15 +02:00
Mitchell Hashimoto 9529dd8cde guests/linux: rsync chown group if owner now set [GH-3223] 2014-04-09 11:03:24 -07:00
Mitchell Hashimoto b20ff91784 guests/linux: SMB mounts with symbol passwords work [GH-3202] 2014-04-09 10:46:56 -07:00
Mitchell Hashimoto a6725710d3 guests/linux: don't show SMB password in plaintext on error [GH-3203] 2014-04-09 10:42:39 -07:00
Mitchell Hashimoto 83c38b9278 command/rsync-auto: use newer listen gem [GH-3249] 2014-04-09 09:48:11 -07:00
Mitchell Hashimoto c02eae2279 providers/hyperv: verify cmdlet is available [GH-3398] 2014-04-09 09:30:17 -07:00
Mitchell Hashimoto 09a3409746 commands/rsync-auto: do an initial sync [GH-3327] 2014-04-09 09:09:42 -07:00
Mitchell Hashimoto 800cf7539b synced_folders/rsync: don't crash if comm error during rsync-auto [GH-3419] 2014-04-09 08:58:56 -07:00
timcooper 1c12609fdb Encapsulate path for smb powershell script 2014-04-07 17:45:29 +01:00
timcooper 902202aad9 Fixed typo in smb errors on error_key call 2014-04-07 17:21:24 +01:00
Mitchell Hashimoto e46f8925bb Merge pull request #3382 from ndemonner/fix-fedora
guests/fedora: fix hostname setting
2014-04-05 09:09:39 -07:00
Mitchell Hashimoto e04ef90b3a Merge pull request #3207 from khiro/support_fedora_predictable_network_interface_names
guests/fedora: Fix a network configuration issue of Fedora [GH-1997]
2014-04-05 09:08:08 -07:00
Mitchell Hashimoto bb967265df synced_folders/rsync: style 2014-04-05 09:05:39 -07:00
Steffen Müller 32f25b6a0d synced_folders/rsync: enable override of default chmod flag
fixed new file creation to follow guest's umask on Windows by default
2014-04-05 11:11:55 +02:00
Nick DeMonner 65ce0ebe97 Fix hostname change 2014-04-04 07:20:17 -07:00
Nick DeMonner b240d40303 Merge branch 'support_fedora_predictable_network_interface_names' of https://github.com/khiro/vagrant into fix-fedora 2014-04-04 07:17:45 -07:00
Mitchell Hashimoto d1caf8c624 core: Allow direct box adding again 2014-04-02 19:45:49 -07:00
Mitchell Hashimoto 3302bd535f kernel/v2: check if type is set before validation 2014-04-02 15:19:36 -07:00
Mitchell Hashimoto a1d9121852 synced_folders/smb: verify PowerShell v3 is running or later [GH-3257] 2014-04-02 09:45:42 -07:00
Mitchell Hashimoto 2e0142168e synced_folders/rsync: set chmod flag by default on Windows [GH-3256] 2014-04-02 09:07:00 -07:00
Mitchell Hashimoto 4f5d5fbc9b Merge pull request #3292 from skinofstars/master
hosts/linux: don't hard code exportfs path
2014-04-01 22:32:08 -07:00
Mitchell Hashimoto cc99719717 Merge pull request #3293 from emyl/machine-readable-plugin-list
Add machine readable output for `vagrant plugin list` command
2014-04-01 22:29:21 -07:00
Mitchell Hashimoto d45eb1f183 commands/box: show version 2014-04-01 22:04:49 -07:00
Mitchell Hashimoto e7277f5e83 Merge pull request #3316 from berendt/issue_3313
commands/box: display version by default when listing boxes
2014-04-01 22:04:08 -07:00
Mitchell Hashimoto a74a57ddf6 Merge pull request #3323 from mattoxbeckman/fix/master/reload-arch-udev-rules
guests/arch: Fix for issue #3322, a followup to issue #2591.
2014-04-01 22:01:12 -07:00
Mitchell Hashimoto 18658fc6fb Merge pull request #3337 from MSOpenTech/fix-issue-3336
providers/hyperv: HyperV provider resume. GH-3336
2014-04-01 21:58:33 -07:00
Mitchell Hashimoto 84f7c019f9 kernel/v2: allow private network type to be a string [GH-3349] 2014-04-01 21:57:23 -07:00
Mitchell Hashimoto d337890f1a Merge pull request #3354 from Coffee-fan/master
synced_folders/smb: properly remove shares
2014-04-01 21:53:44 -07:00
Mitchell Hashimoto 188d3c394f Merge pull request #3355 from miurahr/fix_ssh_utf8
core: force SSH to be ASCII
2014-04-01 21:52:39 -07:00
Mitchell Hashimoto 9fc2c717a2 Merge pull request #3356 from pmenglund/docker_deprecated_arguments
provisioners/docker: fix deprecated docker arguments
2014-04-01 21:51:24 -07:00
Mitchell Hashimoto d2056863de Merge branch 'fix-suse-shutdown-not-found' of github.com:philippfranke/vagrant into philippfranke-fix-suse-shutdown-not-found
Conflicts:
	CHANGELOG.md
2014-04-01 21:50:32 -07:00
Oscar Renalias 8f4ae68f56 Fixes mitchellh/vagrant #3361 for VirtualBox 4.2.x, including internal networks 2014-03-31 21:32:12 +03:00
Oscar Renalias 094be9dc50 Fixes mitchellh/vagrant #3361 for VirtualBox 4.3.x, including internal networks 2014-03-31 21:31:51 +03:00
Oscar Renalias cd6f24b2d9 Fixes mitchellh/vagrant #3361 for VirtualBox 4.2.x 2014-03-31 20:36:24 +03:00