Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
ansible
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
OpenEdx
ansible
Commits
a35a0f88
Commit
a35a0f88
authored
Jul 06, 2012
by
Jeremy Smitherman
Committed by
Jeremy L Smitherman
Jul 10, 2012
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added cmd modifications to use a force-yes option for apt module
parent
238e4adb
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
20 additions
and
5 deletions
+20
-5
library/apt
+20
-5
No files found.
library/apt
View file @
a35a0f88
...
@@ -86,11 +86,16 @@ def package_status(pkgname, version, cache):
...
@@ -86,11 +86,16 @@ def package_status(pkgname, version, cache):
#
assume
older
version
of
python
-
apt
is
installed
#
assume
older
version
of
python
-
apt
is
installed
return
pkg
.
isInstalled
,
pkg
.
isUpgradable
return
pkg
.
isInstalled
,
pkg
.
isUpgradable
def
install
(
pkgspec
,
cache
,
upgrade
=
False
,
default_release
=
None
,
install_recommends
=
True
):
def
install
(
pkgspec
,
cache
,
upgrade
=
False
,
default_release
=
None
,
install_recommends
=
True
,
force
=
False
):
name
,
version
=
package_split
(
pkgspec
)
name
,
version
=
package_split
(
pkgspec
)
installed
,
upgradable
=
package_status
(
name
,
version
,
cache
)
installed
,
upgradable
=
package_status
(
name
,
version
,
cache
)
if
not
installed
or
(
upgrade
and
upgradable
):
if
not
installed
or
(
upgrade
and
upgradable
):
cmd
=
"%s --option Dpkg::Options::=--force-confold -q -y install '%s'"
%
(
APT
,
pkgspec
)
if
force
:
force_yes
=
'--force-yes'
else
:
force_yes
=
''
cmd
=
"%s --option Dpkg::Options::=--force-confold -q -y %s install '%s'"
%
(
APT
,
force_yes
,
pkgspec
)
if
default_release
:
if
default_release
:
cmd
+=
" -t '%s'"
%
(
default_release
,)
cmd
+=
" -t '%s'"
%
(
default_release
,)
if
not
install_recommends
:
if
not
install_recommends
:
...
@@ -142,6 +147,7 @@ update_cache = params.get('update-cache', 'no')
...
@@ -142,6 +147,7 @@ update_cache = params.get('update-cache', 'no')
purge
=
params
.
get
(
'purge'
,
'no'
)
purge
=
params
.
get
(
'purge'
,
'no'
)
default_release
=
params
.
get
(
'default-release'
,
None
)
default_release
=
params
.
get
(
'default-release'
,
None
)
install_recommends
=
params
.
get
(
'install-recommends'
,
'yes'
)
install_recommends
=
params
.
get
(
'install-recommends'
,
'yes'
)
force
=
params
.
get
(
'force'
,
'no'
)
if
state
not
in
[
'installed'
,
'latest'
,
'removed'
]:
if
state
not
in
[
'installed'
,
'latest'
,
'removed'
]:
fail_json
(
msg
=
'invalid state'
)
fail_json
(
msg
=
'invalid state'
)
...
@@ -152,6 +158,9 @@ if update_cache not in ['yes', 'no']:
...
@@ -152,6 +158,9 @@ if update_cache not in ['yes', 'no']:
if
purge
not
in
[
'yes'
,
'no'
]:
if
purge
not
in
[
'yes'
,
'no'
]:
fail_json
(
msg
=
'invalid value for purge (requires yes or no -- default is no)'
)
fail_json
(
msg
=
'invalid value for purge (requires yes or no -- default is no)'
)
if
force
not
in
[
'yes'
,
'no'
]:
fail_json
(
msg
=
'invalid option for force (requires yes or no -- default is no)'
)
if
package
is
None
and
update_cache
!= 'yes':
if
package
is
None
and
update_cache
!= 'yes':
fail_json
(
msg
=
'pkg=name and/or update-cache=yes is required'
)
fail_json
(
msg
=
'pkg=name and/or update-cache=yes is required'
)
...
@@ -171,18 +180,24 @@ if update_cache == 'yes':
...
@@ -171,18 +180,24 @@ if update_cache == 'yes':
if
package
==
None
:
if
package
==
None
:
exit_json
(
changed
=
False
)
exit_json
(
changed
=
False
)
if
force
==
'yes'
:
force_yes
=
True
else
:
force_yes
=
False
if
package
.
count
(
'='
)
>
1
:
if
package
.
count
(
'='
)
>
1
:
fail_json
(
msg
=
'invalid package spec'
)
fail_json
(
msg
=
'invalid package spec'
)
if
state
==
'latest'
:
if
state
==
'latest'
:
if
'='
in
package
:
if
'='
in
package
:
fail_json
(
msg
=
'version number inconsistent with state=latest'
)
fail_json
(
msg
=
'version number inconsistent with state=latest'
)
changed
=
install
(
package
,
cache
,
upgrade
=
True
,
changed
=
install
(
package
,
cache
,
upgrade
=
True
,
default_release
=
default_release
,
default_release
=
default_release
,
install_recommends
=
install_recommends
)
install_recommends
=
install_recommends
,
force
=
force_yes
)
elif
state
==
'installed'
:
elif
state
==
'installed'
:
changed
=
install
(
package
,
cache
,
default_release
=
default_release
,
changed
=
install
(
package
,
cache
,
default_release
=
default_release
,
install_recommends
=
install_recommends
)
install_recommends
=
install_recommends
,
force
=
force_yes
)
elif
state
==
'removed'
:
elif
state
==
'removed'
:
changed
=
remove
(
package
,
cache
,
purge
==
'yes'
)
changed
=
remove
(
package
,
cache
,
purge
==
'yes'
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment