1# Tests that package upgrade works properly 2 3body common control 4{ 5 inputs => { "../default.cf.sub" }; 6 bundlesequence => { "init", "test" }; 7 version => "1.0"; 8 9} 10 11bundle agent init 12{ 13 methods: 14 "make filerepo" usebundle => file_make($(G.testfile), 15 ""); 16} 17 18body package_method test_method_filerepo(currentdir) 19{ 20 package_changes => "individual"; 21 package_list_command => "$(G.cat) $(currentdir)/test_repository/installed.txt | $(G.grep) 'i '"; 22 package_installed_regex => "i .*"; 23 package_list_name_regex => "^[ia] (\S+?)\s\S+?\s\S+$"; 24 package_list_version_regex => "^[ia] \S+?\s(\S+?)\s\S+$"; 25 package_list_arch_regex => "^[ia] \S+?\s\S+?\s(\S+)$"; 26 27 # Normally one would use $(G.echo), but it messes up redirection when you have arguments 28 # following the redirected filename on Windows, so use the stock "echo" in this case. 29 package_add_command => "echo >>$(G.testfile) filerepo ADD"; 30 package_update_command => "echo >>$(G.testfile) filerepo UPDATE"; 31 package_delete_command => "echo >>$(G.testfile) filerepo DELETE"; 32 33 package_file_repositories => { translatepath("$(currentdir)/test_repository") }; 34 package_name_convention => "$(name)-$(version).$(arch).rpm"; 35} 36 37bundle agent test 38{ 39 vars: 40 "currentdir" string => translatepath("$(this.promise_dirname)"); 41 packages: 42 "install-exact-version" 43 package_policy => "addupdate", 44 package_select => "==", 45 package_version => "2.2.3", 46 package_architectures => { "i386" }, 47 package_method => test_method_filerepo($(currentdir)); 48 49 "update-to-exact-version" 50 package_policy => "addupdate", 51 package_select => "==", 52 package_version => "2.2.3", 53 package_architectures => { "i386" }, 54 package_method => test_method_filerepo($(currentdir)); 55 56 "delete-exact-version" 57 package_policy => "delete", 58 package_select => "==", 59 package_version => "2.2.3", 60 package_architectures => { "i386" }, 61 package_method => test_method_filerepo($(currentdir)); 62 63 "install-lessorequal-version" 64 package_policy => "addupdate", 65 package_select => "<=", 66 package_version => "2.4.5", 67 package_architectures => { "i386" }, 68 package_method => test_method_filerepo($(currentdir)); 69 70 "update-to-lessorequal-version" 71 package_policy => "addupdate", 72 package_select => "<=", 73 package_version => "2.4.5", 74 package_architectures => { "i386" }, 75 package_method => test_method_filerepo($(currentdir)); 76 77 "install-lessthan-version" 78 package_policy => "addupdate", 79 package_select => "<", 80 package_version => "2.4.5", 81 package_architectures => { "i386" }, 82 package_method => test_method_filerepo($(currentdir)); 83 84 "update-to-lessthan-version" 85 package_policy => "addupdate", 86 package_select => "<", 87 package_version => "2.4.5", 88 package_architectures => { "i386" }, 89 package_method => test_method_filerepo($(currentdir)); 90 91 "install-greaterorequal-version" 92 package_policy => "addupdate", 93 package_select => ">=", 94 package_version => "2.0.1", 95 package_architectures => { "i386" }, 96 package_method => test_method_filerepo($(currentdir)); 97 98 "update-to-greaterorequal-version" 99 package_policy => "addupdate", 100 package_select => ">=", 101 package_version => "2.0.1", 102 package_architectures => { "i386" }, 103 package_method => test_method_filerepo($(currentdir)); 104 105 "update-to-greaterorequal-version-already-greater-installed" 106 package_policy => "addupdate", 107 package_select => ">=", 108 package_version => "2.0.1", 109 package_architectures => { "i386" }, 110 package_method => test_method_filerepo($(currentdir)); 111 112 "install-greaterthan-version" 113 package_policy => "addupdate", 114 package_select => ">", 115 package_version => "2.0.1", 116 package_architectures => { "i386" }, 117 package_method => test_method_filerepo($(currentdir)); 118 119 "update-to-greaterthan-version" 120 package_policy => "addupdate", 121 package_select => ">", 122 package_version => "2.0.1", 123 package_architectures => { "i386" }, 124 package_method => test_method_filerepo($(currentdir)); 125 126 "update-to-greaterthan-version-already-greater-installed" 127 package_policy => "addupdate", 128 package_select => ">", 129 package_version => "2.0.1", 130 package_architectures => { "i386" }, 131 package_method => test_method_filerepo($(currentdir)); 132 133 "mismatch-install-exact-version" 134 package_policy => "addupdate", 135 package_select => "==", 136 package_version => "2.1.3", 137 package_architectures => { "i386" }, 138 package_method => test_method_filerepo($(currentdir)); 139 140 "mismatch-update-to-exact-version" 141 package_policy => "addupdate", 142 package_select => "==", 143 package_version => "2.1.3", 144 package_architectures => { "i386" }, 145 package_method => test_method_filerepo($(currentdir)); 146 147 "mismatch-delete-exact-version" 148 package_policy => "delete", 149 package_select => "==", 150 package_version => "2.1.3", 151 package_architectures => { "i386" }, 152 package_method => test_method_filerepo($(currentdir)); 153 154 "mismatch-install-lessorequal-version" 155 package_policy => "addupdate", 156 package_select => "<=", 157 package_version => "2.1.5", 158 package_architectures => { "i386" }, 159 package_method => test_method_filerepo($(currentdir)); 160 161 "mismatch-update-to-lessorequal-version" 162 package_policy => "addupdate", 163 package_select => "<=", 164 package_version => "2.1.5", 165 package_architectures => { "i386" }, 166 package_method => test_method_filerepo($(currentdir)); 167 168 "mismatch-install-lessthan-version" 169 package_policy => "addupdate", 170 package_select => "<", 171 package_version => "2.1.5", 172 package_architectures => { "i386" }, 173 package_method => test_method_filerepo($(currentdir)); 174 175 "mismatch-update-to-lessthan-version" 176 package_policy => "addupdate", 177 package_select => "<", 178 package_version => "2.1.5", 179 package_architectures => { "i386" }, 180 package_method => test_method_filerepo($(currentdir)); 181 182 "mismatch-install-greaterorequal-version" 183 package_policy => "addupdate", 184 package_select => ">=", 185 package_version => "2.4.1", 186 package_architectures => { "i386" }, 187 package_method => test_method_filerepo($(currentdir)); 188 189 "mismatch-update-to-greaterorequal-version" 190 package_policy => "addupdate", 191 package_select => ">=", 192 package_version => "2.4.1", 193 package_architectures => { "i386" }, 194 package_method => test_method_filerepo($(currentdir)); 195 196 "mismatch-install-greaterthan-version" 197 package_policy => "addupdate", 198 package_select => ">", 199 package_version => "2.4.1", 200 package_architectures => { "i386" }, 201 package_method => test_method_filerepo($(currentdir)); 202 203 "mismatch-update-to-greaterthan-version" 204 package_policy => "addupdate", 205 package_select => ">", 206 package_version => "2.4.1", 207 package_architectures => { "i386" }, 208 package_method => test_method_filerepo($(currentdir)); 209 210 "missing-install-exact-version" 211 package_policy => "addupdate", 212 package_select => "==", 213 package_version => "2.2.3", 214 package_architectures => { "i386" }, 215 package_method => test_method_filerepo($(currentdir)); 216 217 "missing-update-to-exact-version" 218 package_policy => "addupdate", 219 package_select => "==", 220 package_version => "2.2.3", 221 package_architectures => { "i386" }, 222 package_method => test_method_filerepo($(currentdir)); 223 224 "missing-install-lessorequal-version" 225 package_policy => "addupdate", 226 package_select => "<=", 227 package_version => "2.4.5", 228 package_architectures => { "i386" }, 229 package_method => test_method_filerepo($(currentdir)); 230 231 "missing-update-to-lessorequal-version" 232 package_policy => "addupdate", 233 package_select => "<=", 234 package_version => "2.4.5", 235 package_architectures => { "i386" }, 236 package_method => test_method_filerepo($(currentdir)); 237 238 "missing-install-lessthan-version" 239 package_policy => "addupdate", 240 package_select => "<", 241 package_version => "2.4.5", 242 package_architectures => { "i386" }, 243 package_method => test_method_filerepo($(currentdir)); 244 245 "missing-update-to-lessthan-version" 246 package_policy => "addupdate", 247 package_select => "<", 248 package_version => "2.4.5", 249 package_architectures => { "i386" }, 250 package_method => test_method_filerepo($(currentdir)); 251 252 "missing-install-greaterorequal-version" 253 package_policy => "addupdate", 254 package_select => ">=", 255 package_version => "2.0.1", 256 package_architectures => { "i386" }, 257 package_method => test_method_filerepo($(currentdir)); 258 259 "missing-update-to-greaterorequal-version" 260 package_policy => "addupdate", 261 package_select => ">=", 262 package_version => "2.0.1", 263 package_architectures => { "i386" }, 264 package_method => test_method_filerepo($(currentdir)); 265 266 "missing-install-greaterthan-version" 267 package_policy => "addupdate", 268 package_select => ">", 269 package_version => "2.0.1", 270 package_architectures => { "i386" }, 271 package_method => test_method_filerepo($(currentdir)); 272 273 "missing-update-to-greaterthan-version" 274 package_policy => "addupdate", 275 package_select => ">", 276 package_version => "2.0.1", 277 package_architectures => { "i386" }, 278 package_method => test_method_filerepo($(currentdir)); 279} 280