From 98d5f43bda03a19264178931c2167a88f85f2528 Mon Sep 17 00:00:00 2001 From: Rafid Bin Mostofa Date: Fri, 6 Dec 2024 14:39:07 +0600 Subject: [PATCH] feat: add tzdata-legacy slices In 24.04, the tzdata package was split into tzdata, tzdata-icu, and tzdata-legacy. The tzdata package ships only timezones that follow the current rules of geographical region (continent or ocean) and city name. All legacy timezone symlinks (old or merged timezones mentioned in the upstream backward file) were moved to tzdata-legacy. This includes the US/* timezones. [1] This commit adds the slice definitions for tzdata-legacy to provide the legacy timezones. It also changes the tzdata slice definitions to include explicit paths instead of globs to avoid conflicting paths across tzdata and tzdata-legacy slices. References: - [1] https://discourse.ubuntu.com/t/ubuntu-24-04-lts-noble-numbat-release-notes/39890#p-99950-tzdata-package-split Resolves #405. --- slices/tzdata-legacy.yaml | 265 +++++++++++ slices/tzdata.yaml | 433 +++++++++++++++++- .../spread/integration/tzdata-legacy/smoke.sh | 23 + .../integration/tzdata-legacy/task.yaml | 16 + 4 files changed, 729 insertions(+), 8 deletions(-) create mode 100644 slices/tzdata-legacy.yaml create mode 100755 tests/spread/integration/tzdata-legacy/smoke.sh create mode 100644 tests/spread/integration/tzdata-legacy/task.yaml diff --git a/slices/tzdata-legacy.yaml b/slices/tzdata-legacy.yaml new file mode 100644 index 000000000..87ae993b4 --- /dev/null +++ b/slices/tzdata-legacy.yaml @@ -0,0 +1,265 @@ +package: tzdata-legacy + +essential: + - tzdata-legacy_copyright + +slices: + # The "base" slice contains Canonical timezone abbreviations. These are + # primary, preferred zone names that are often used as abbreviations for + # location-specific timezones across the globe. Example: Europe/Sofia observes + # EET. + base: + essential: + - tzdata_base + contents: + /usr/share/zoneinfo/right/CET: + /usr/share/zoneinfo/right/CST6CDT: + /usr/share/zoneinfo/right/EET: + /usr/share/zoneinfo/right/EST: + /usr/share/zoneinfo/right/EST5EDT: + /usr/share/zoneinfo/right/Factory: + /usr/share/zoneinfo/right/HST: + /usr/share/zoneinfo/right/MET: + /usr/share/zoneinfo/right/MST: + /usr/share/zoneinfo/right/MST7MDT: + /usr/share/zoneinfo/right/PST8PDT: + /usr/share/zoneinfo/right/WET: + + africa: + essential: + - tzdata_africa + contents: + /usr/share/zoneinfo/Africa/Asmera: + /usr/share/zoneinfo/Egypt: + /usr/share/zoneinfo/Libya: + /usr/share/zoneinfo/right/Africa/**: + /usr/share/zoneinfo/right/Egypt: + /usr/share/zoneinfo/right/Libya: + + america: + essential: + - tzdata_america + contents: + /usr/share/zoneinfo/America/Argentina/ComodRivadavia: + /usr/share/zoneinfo/America/Buenos_Aires: + /usr/share/zoneinfo/America/Catamarca: + /usr/share/zoneinfo/America/Cordoba: + /usr/share/zoneinfo/America/Fort_Wayne: + /usr/share/zoneinfo/America/Godthab: + /usr/share/zoneinfo/America/Indianapolis: + /usr/share/zoneinfo/America/Jujuy: + /usr/share/zoneinfo/America/Knox_IN: + /usr/share/zoneinfo/America/Louisville: + /usr/share/zoneinfo/America/Mendoza: + /usr/share/zoneinfo/America/Rosario: + /usr/share/zoneinfo/Cuba: + /usr/share/zoneinfo/Jamaica: + /usr/share/zoneinfo/Navajo: + /usr/share/zoneinfo/right/America/**: + /usr/share/zoneinfo/right/Cuba: + /usr/share/zoneinfo/right/Jamaica: + /usr/share/zoneinfo/right/Navajo: + + antarctica: + essential: + - tzdata_antarctica + contents: + /usr/share/zoneinfo/Antarctica/South_Pole: + /usr/share/zoneinfo/right/Antarctica/**: + + arctic: + essential: + - tzdata-legacy_eurasia + - tzdata_arctic + contents: + /usr/share/zoneinfo/right/Arctic/*: + + atlantic: + essential: + - tzdata_atlantic + contents: + /usr/share/zoneinfo/Atlantic/Faeroe: + /usr/share/zoneinfo/right/Atlantic/**: + + australia: + essential: + - tzdata_australia + contents: + /usr/share/zoneinfo/Australia/ACT: + /usr/share/zoneinfo/Australia/LHI: + /usr/share/zoneinfo/Australia/NSW: + /usr/share/zoneinfo/Australia/North: + /usr/share/zoneinfo/Australia/Queensland: + /usr/share/zoneinfo/Australia/South: + /usr/share/zoneinfo/Australia/Tasmania: + /usr/share/zoneinfo/Australia/Victoria: + /usr/share/zoneinfo/Australia/West: + /usr/share/zoneinfo/right/Australia/**: + + # Some countries, although geographically belonging to a continent, are kept + # in their own slice since that is how they are structured in the tzdata deb. + brazil: + essential: + - tzdata-legacy_america + contents: + /usr/share/zoneinfo/Brazil/Acre: + /usr/share/zoneinfo/Brazil/DeNoronha: + /usr/share/zoneinfo/Brazil/East: + /usr/share/zoneinfo/Brazil/West: + /usr/share/zoneinfo/right/Brazil/**: + + canada: + essential: + - tzdata-legacy_america + contents: + /usr/share/zoneinfo/Canada/**: + /usr/share/zoneinfo/right/Canada/**: + + chile: + essential: + - tzdata-legacy_america + - tzdata-legacy_pacific + contents: + /usr/share/zoneinfo/Chile/**: + /usr/share/zoneinfo/right/Chile/**: + + # "Etc" is meant to provide "timezones" that don't fit with the standard + # timezones. As an example, UTC isn't actually a timezone, but a standard. + # Like Zulu and others, most of these can be used for time information, but + # derive from different domains (like the military). Same for others. + etc: + essential: + - tzdata_etc + contents: + /usr/share/zoneinfo/GMT+0: + /usr/share/zoneinfo/GMT-0: + /usr/share/zoneinfo/GMT0: + /usr/share/zoneinfo/Greenwich: + /usr/share/zoneinfo/UCT: + /usr/share/zoneinfo/Universal: + /usr/share/zoneinfo/Zulu: + /usr/share/zoneinfo/right/Etc/**: + /usr/share/zoneinfo/right/GMT: + /usr/share/zoneinfo/right/GMT+0: + /usr/share/zoneinfo/right/GMT-0: + /usr/share/zoneinfo/right/GMT0: + /usr/share/zoneinfo/right/Greenwich: + /usr/share/zoneinfo/right/UCT: + /usr/share/zoneinfo/right/UTC: + /usr/share/zoneinfo/right/Universal: + /usr/share/zoneinfo/right/Zulu: + + eurasia: + essential: + - tzdata-legacy_atlantic + - tzdata_eurasia + contents: + /usr/share/zoneinfo/Asia/Ashkhabad: + /usr/share/zoneinfo/Asia/Calcutta: + /usr/share/zoneinfo/Asia/Chungking: + /usr/share/zoneinfo/Asia/Dacca: + /usr/share/zoneinfo/Asia/Katmandu: + /usr/share/zoneinfo/Asia/Macao: + /usr/share/zoneinfo/Asia/Rangoon: + /usr/share/zoneinfo/Asia/Saigon: + /usr/share/zoneinfo/Asia/Thimbu: + /usr/share/zoneinfo/Asia/Ujung_Pandang: + /usr/share/zoneinfo/Asia/Ulan_Bator: + /usr/share/zoneinfo/Eire: + /usr/share/zoneinfo/Europe/Kiev: + /usr/share/zoneinfo/Europe/Uzhgorod: + /usr/share/zoneinfo/Europe/Zaporozhye: + /usr/share/zoneinfo/GB-Eire: + /usr/share/zoneinfo/GB: + /usr/share/zoneinfo/Hongkong: + /usr/share/zoneinfo/Iceland: + /usr/share/zoneinfo/Iran: + /usr/share/zoneinfo/Israel: + /usr/share/zoneinfo/Japan: + /usr/share/zoneinfo/PRC: + /usr/share/zoneinfo/Poland: + /usr/share/zoneinfo/Portugal: + /usr/share/zoneinfo/ROC: + /usr/share/zoneinfo/ROK: + /usr/share/zoneinfo/Singapore: + /usr/share/zoneinfo/Turkey: + /usr/share/zoneinfo/W-SU: + /usr/share/zoneinfo/right/Asia/**: + /usr/share/zoneinfo/right/Eire: + /usr/share/zoneinfo/right/Europe/**: + /usr/share/zoneinfo/right/GB-Eire: + /usr/share/zoneinfo/right/GB: + /usr/share/zoneinfo/right/Hongkong: + /usr/share/zoneinfo/right/Iceland: + /usr/share/zoneinfo/right/Iran: + /usr/share/zoneinfo/right/Israel: + /usr/share/zoneinfo/right/Japan: + /usr/share/zoneinfo/right/PRC: + /usr/share/zoneinfo/right/Poland: + /usr/share/zoneinfo/right/Portugal: + /usr/share/zoneinfo/right/ROC: + /usr/share/zoneinfo/right/ROK: + /usr/share/zoneinfo/right/Singapore: + /usr/share/zoneinfo/right/Turkey: + /usr/share/zoneinfo/right/W-SU: + + indian: + essential: + - tzdata_indian + contents: + /usr/share/zoneinfo/right/Indian/**: + + mexico: + essential: + - tzdata-legacy_america + contents: + /usr/share/zoneinfo/Mexico/*: + /usr/share/zoneinfo/right/Mexico/*: + + pacific: + essential: + - tzdata_pacific + contents: + /usr/share/zoneinfo/Kwajalein: + /usr/share/zoneinfo/NZ: + /usr/share/zoneinfo/NZ-CHAT: + /usr/share/zoneinfo/Pacific/Enderbury: + /usr/share/zoneinfo/Pacific/Ponape: + /usr/share/zoneinfo/Pacific/Truk: + /usr/share/zoneinfo/right/Kwajalein: + /usr/share/zoneinfo/right/NZ: + /usr/share/zoneinfo/right/NZ-CHAT: + /usr/share/zoneinfo/right/Pacific/**: + + united-states: + essential: + - tzdata-legacy_america + - tzdata-legacy_pacific + contents: + /usr/share/zoneinfo/US/*: + /usr/share/zoneinfo/right/US/*: + + # Install all timezones. + zoneinfo: + essential: + - tzdata-legacy_africa + - tzdata-legacy_america + - tzdata-legacy_antarctica + - tzdata-legacy_arctic + - tzdata-legacy_atlantic + - tzdata-legacy_australia + - tzdata-legacy_base + - tzdata-legacy_brazil + - tzdata-legacy_canada + - tzdata-legacy_chile + - tzdata-legacy_etc + - tzdata-legacy_eurasia + - tzdata-legacy_indian + - tzdata-legacy_mexico + - tzdata-legacy_pacific + - tzdata-legacy_united-states + - tzdata_zoneinfo + + copyright: + contents: + /usr/share/doc/tzdata-legacy/copyright: diff --git a/slices/tzdata.yaml b/slices/tzdata.yaml index 737ee0624..b7f0eed72 100644 --- a/slices/tzdata.yaml +++ b/slices/tzdata.yaml @@ -32,20 +32,227 @@ slices: essential: - tzdata_config contents: - /usr/share/zoneinfo/Africa/**: + /usr/share/zoneinfo/Africa/Abidjan: + /usr/share/zoneinfo/Africa/Accra: + /usr/share/zoneinfo/Africa/Addis_Ababa: + /usr/share/zoneinfo/Africa/Algiers: + /usr/share/zoneinfo/Africa/Asmara: + /usr/share/zoneinfo/Africa/Bamako: + /usr/share/zoneinfo/Africa/Bangui: + /usr/share/zoneinfo/Africa/Banjul: + /usr/share/zoneinfo/Africa/Bissau: + /usr/share/zoneinfo/Africa/Blantyre: + /usr/share/zoneinfo/Africa/Brazzaville: + /usr/share/zoneinfo/Africa/Bujumbura: + /usr/share/zoneinfo/Africa/Cairo: + /usr/share/zoneinfo/Africa/Casablanca: + /usr/share/zoneinfo/Africa/Ceuta: + /usr/share/zoneinfo/Africa/Conakry: + /usr/share/zoneinfo/Africa/Dakar: + /usr/share/zoneinfo/Africa/Dar_es_Salaam: + /usr/share/zoneinfo/Africa/Djibouti: + /usr/share/zoneinfo/Africa/Douala: + /usr/share/zoneinfo/Africa/El_Aaiun: + /usr/share/zoneinfo/Africa/Freetown: + /usr/share/zoneinfo/Africa/Gaborone: + /usr/share/zoneinfo/Africa/Harare: + /usr/share/zoneinfo/Africa/Johannesburg: + /usr/share/zoneinfo/Africa/Juba: + /usr/share/zoneinfo/Africa/Kampala: + /usr/share/zoneinfo/Africa/Khartoum: + /usr/share/zoneinfo/Africa/Kigali: + /usr/share/zoneinfo/Africa/Kinshasa: + /usr/share/zoneinfo/Africa/Lagos: + /usr/share/zoneinfo/Africa/Libreville: + /usr/share/zoneinfo/Africa/Lome: + /usr/share/zoneinfo/Africa/Luanda: + /usr/share/zoneinfo/Africa/Lubumbashi: + /usr/share/zoneinfo/Africa/Lusaka: + /usr/share/zoneinfo/Africa/Malabo: + /usr/share/zoneinfo/Africa/Maputo: + /usr/share/zoneinfo/Africa/Maseru: + /usr/share/zoneinfo/Africa/Mbabane: + /usr/share/zoneinfo/Africa/Mogadishu: + /usr/share/zoneinfo/Africa/Monrovia: + /usr/share/zoneinfo/Africa/Nairobi: + /usr/share/zoneinfo/Africa/Ndjamena: + /usr/share/zoneinfo/Africa/Niamey: + /usr/share/zoneinfo/Africa/Nouakchott: + /usr/share/zoneinfo/Africa/Ouagadougou: + /usr/share/zoneinfo/Africa/Porto-Novo: + /usr/share/zoneinfo/Africa/Sao_Tome: + /usr/share/zoneinfo/Africa/Timbuktu: + /usr/share/zoneinfo/Africa/Tripoli: + /usr/share/zoneinfo/Africa/Tunis: + /usr/share/zoneinfo/Africa/Windhoek: america: essential: - tzdata_config contents: - /usr/share/zoneinfo/America/**: + /usr/share/zoneinfo/America/Adak: + /usr/share/zoneinfo/America/Anchorage: + /usr/share/zoneinfo/America/Anguilla: + /usr/share/zoneinfo/America/Antigua: + /usr/share/zoneinfo/America/Araguaina: + /usr/share/zoneinfo/America/Argentina/Buenos_Aires: + /usr/share/zoneinfo/America/Argentina/Catamarca: + /usr/share/zoneinfo/America/Argentina/Cordoba: + /usr/share/zoneinfo/America/Argentina/Jujuy: + /usr/share/zoneinfo/America/Argentina/La_Rioja: + /usr/share/zoneinfo/America/Argentina/Mendoza: + /usr/share/zoneinfo/America/Argentina/Rio_Gallegos: + /usr/share/zoneinfo/America/Argentina/Salta: + /usr/share/zoneinfo/America/Argentina/San_Juan: + /usr/share/zoneinfo/America/Argentina/San_Luis: + /usr/share/zoneinfo/America/Argentina/Tucuman: + /usr/share/zoneinfo/America/Argentina/Ushuaia: + /usr/share/zoneinfo/America/Aruba: + /usr/share/zoneinfo/America/Asuncion: + /usr/share/zoneinfo/America/Atikokan: + /usr/share/zoneinfo/America/Atka: + /usr/share/zoneinfo/America/Bahia: + /usr/share/zoneinfo/America/Bahia_Banderas: + /usr/share/zoneinfo/America/Barbados: + /usr/share/zoneinfo/America/Belem: + /usr/share/zoneinfo/America/Belize: + /usr/share/zoneinfo/America/Blanc-Sablon: + /usr/share/zoneinfo/America/Boa_Vista: + /usr/share/zoneinfo/America/Bogota: + /usr/share/zoneinfo/America/Boise: + /usr/share/zoneinfo/America/Cambridge_Bay: + /usr/share/zoneinfo/America/Campo_Grande: + /usr/share/zoneinfo/America/Cancun: + /usr/share/zoneinfo/America/Caracas: + /usr/share/zoneinfo/America/Cayenne: + /usr/share/zoneinfo/America/Cayman: + /usr/share/zoneinfo/America/Chicago: + /usr/share/zoneinfo/America/Chihuahua: + /usr/share/zoneinfo/America/Ciudad_Juarez: + /usr/share/zoneinfo/America/Coral_Harbour: + /usr/share/zoneinfo/America/Costa_Rica: + /usr/share/zoneinfo/America/Creston: + /usr/share/zoneinfo/America/Cuiaba: + /usr/share/zoneinfo/America/Curacao: + /usr/share/zoneinfo/America/Danmarkshavn: + /usr/share/zoneinfo/America/Dawson: + /usr/share/zoneinfo/America/Dawson_Creek: + /usr/share/zoneinfo/America/Denver: + /usr/share/zoneinfo/America/Detroit: + /usr/share/zoneinfo/America/Dominica: + /usr/share/zoneinfo/America/Edmonton: + /usr/share/zoneinfo/America/Eirunepe: + /usr/share/zoneinfo/America/El_Salvador: + /usr/share/zoneinfo/America/Ensenada: + /usr/share/zoneinfo/America/Fort_Nelson: + /usr/share/zoneinfo/America/Fortaleza: + /usr/share/zoneinfo/America/Glace_Bay: + /usr/share/zoneinfo/America/Goose_Bay: + /usr/share/zoneinfo/America/Grand_Turk: + /usr/share/zoneinfo/America/Grenada: + /usr/share/zoneinfo/America/Guadeloupe: + /usr/share/zoneinfo/America/Guatemala: + /usr/share/zoneinfo/America/Guayaquil: + /usr/share/zoneinfo/America/Guyana: + /usr/share/zoneinfo/America/Halifax: + /usr/share/zoneinfo/America/Havana: + /usr/share/zoneinfo/America/Hermosillo: + /usr/share/zoneinfo/America/Indiana/**: + /usr/share/zoneinfo/America/Inuvik: + /usr/share/zoneinfo/America/Iqaluit: + /usr/share/zoneinfo/America/Jamaica: + /usr/share/zoneinfo/America/Juneau: + /usr/share/zoneinfo/America/Kentucky/**: + /usr/share/zoneinfo/America/Kralendijk: + /usr/share/zoneinfo/America/La_Paz: + /usr/share/zoneinfo/America/Lima: + /usr/share/zoneinfo/America/Los_Angeles: + /usr/share/zoneinfo/America/Lower_Princes: + /usr/share/zoneinfo/America/Maceio: + /usr/share/zoneinfo/America/Managua: + /usr/share/zoneinfo/America/Manaus: + /usr/share/zoneinfo/America/Marigot: + /usr/share/zoneinfo/America/Martinique: + /usr/share/zoneinfo/America/Matamoros: + /usr/share/zoneinfo/America/Mazatlan: + /usr/share/zoneinfo/America/Menominee: + /usr/share/zoneinfo/America/Merida: + /usr/share/zoneinfo/America/Metlakatla: + /usr/share/zoneinfo/America/Mexico_City: + /usr/share/zoneinfo/America/Miquelon: + /usr/share/zoneinfo/America/Moncton: + /usr/share/zoneinfo/America/Monterrey: + /usr/share/zoneinfo/America/Montevideo: + /usr/share/zoneinfo/America/Montreal: + /usr/share/zoneinfo/America/Montserrat: + /usr/share/zoneinfo/America/Nassau: + /usr/share/zoneinfo/America/New_York: + /usr/share/zoneinfo/America/Nipigon: + /usr/share/zoneinfo/America/Nome: + /usr/share/zoneinfo/America/Noronha: + /usr/share/zoneinfo/America/North_Dakota/**: + /usr/share/zoneinfo/America/Nuuk: + /usr/share/zoneinfo/America/Ojinaga: + /usr/share/zoneinfo/America/Panama: + /usr/share/zoneinfo/America/Pangnirtung: + /usr/share/zoneinfo/America/Paramaribo: + /usr/share/zoneinfo/America/Phoenix: + /usr/share/zoneinfo/America/Port-au-Prince: + /usr/share/zoneinfo/America/Port_of_Spain: + /usr/share/zoneinfo/America/Porto_Acre: + /usr/share/zoneinfo/America/Porto_Velho: + /usr/share/zoneinfo/America/Puerto_Rico: + /usr/share/zoneinfo/America/Punta_Arenas: + /usr/share/zoneinfo/America/Rainy_River: + /usr/share/zoneinfo/America/Rankin_Inlet: + /usr/share/zoneinfo/America/Recife: + /usr/share/zoneinfo/America/Regina: + /usr/share/zoneinfo/America/Resolute: + /usr/share/zoneinfo/America/Rio_Branco: + /usr/share/zoneinfo/America/Santa_Isabel: + /usr/share/zoneinfo/America/Santarem: + /usr/share/zoneinfo/America/Santiago: + /usr/share/zoneinfo/America/Santo_Domingo: + /usr/share/zoneinfo/America/Sao_Paulo: + /usr/share/zoneinfo/America/Scoresbysund: + /usr/share/zoneinfo/America/Shiprock: + /usr/share/zoneinfo/America/Sitka: + /usr/share/zoneinfo/America/St_Barthelemy: + /usr/share/zoneinfo/America/St_Johns: + /usr/share/zoneinfo/America/St_Kitts: + /usr/share/zoneinfo/America/St_Lucia: + /usr/share/zoneinfo/America/St_Thomas: + /usr/share/zoneinfo/America/St_Vincent: + /usr/share/zoneinfo/America/Swift_Current: + /usr/share/zoneinfo/America/Tegucigalpa: + /usr/share/zoneinfo/America/Thule: + /usr/share/zoneinfo/America/Thunder_Bay: + /usr/share/zoneinfo/America/Tijuana: + /usr/share/zoneinfo/America/Toronto: + /usr/share/zoneinfo/America/Tortola: + /usr/share/zoneinfo/America/Vancouver: + /usr/share/zoneinfo/America/Virgin: + /usr/share/zoneinfo/America/Whitehorse: + /usr/share/zoneinfo/America/Winnipeg: + /usr/share/zoneinfo/America/Yakutat: + /usr/share/zoneinfo/America/Yellowknife: /usr/share/zoneinfo/posixrules: antarctica: essential: - tzdata_config contents: - /usr/share/zoneinfo/Antarctica/**: + /usr/share/zoneinfo/Antarctica/Casey: + /usr/share/zoneinfo/Antarctica/Davis: + /usr/share/zoneinfo/Antarctica/DumontDUrville: + /usr/share/zoneinfo/Antarctica/Macquarie: + /usr/share/zoneinfo/Antarctica/Mawson: + /usr/share/zoneinfo/Antarctica/McMurdo: + /usr/share/zoneinfo/Antarctica/Palmer: + /usr/share/zoneinfo/Antarctica/Rothera: + /usr/share/zoneinfo/Antarctica/Syowa: + /usr/share/zoneinfo/Antarctica/Troll: + /usr/share/zoneinfo/Antarctica/Vostok: arctic: essential: @@ -59,13 +266,36 @@ slices: - tzdata_config - tzdata_eurasia contents: - /usr/share/zoneinfo/Atlantic/**: + /usr/share/zoneinfo/Atlantic/Azores: + /usr/share/zoneinfo/Atlantic/Bermuda: + /usr/share/zoneinfo/Atlantic/Canary: + /usr/share/zoneinfo/Atlantic/Cape_Verde: + /usr/share/zoneinfo/Atlantic/Faroe: + /usr/share/zoneinfo/Atlantic/Jan_Mayen: + /usr/share/zoneinfo/Atlantic/Madeira: + /usr/share/zoneinfo/Atlantic/Reykjavik: + /usr/share/zoneinfo/Atlantic/South_Georgia: + /usr/share/zoneinfo/Atlantic/St_Helena: + /usr/share/zoneinfo/Atlantic/Stanley: australia: essential: - tzdata_config contents: - /usr/share/zoneinfo/Australia/**: + /usr/share/zoneinfo/Australia/Adelaide: + /usr/share/zoneinfo/Australia/Brisbane: + /usr/share/zoneinfo/Australia/Broken_Hill: + /usr/share/zoneinfo/Australia/Canberra: + /usr/share/zoneinfo/Australia/Currie: + /usr/share/zoneinfo/Australia/Darwin: + /usr/share/zoneinfo/Australia/Eucla: + /usr/share/zoneinfo/Australia/Hobart: + /usr/share/zoneinfo/Australia/Lindeman: + /usr/share/zoneinfo/Australia/Lord_Howe: + /usr/share/zoneinfo/Australia/Melbourne: + /usr/share/zoneinfo/Australia/Perth: + /usr/share/zoneinfo/Australia/Sydney: + /usr/share/zoneinfo/Australia/Yancowinna: config: contents: @@ -89,8 +319,155 @@ slices: essential: - tzdata_config contents: - /usr/share/zoneinfo/Asia/**: - /usr/share/zoneinfo/Europe/**: + /usr/share/zoneinfo/Asia/Aden: + /usr/share/zoneinfo/Asia/Almaty: + /usr/share/zoneinfo/Asia/Amman: + /usr/share/zoneinfo/Asia/Anadyr: + /usr/share/zoneinfo/Asia/Aqtau: + /usr/share/zoneinfo/Asia/Aqtobe: + /usr/share/zoneinfo/Asia/Ashgabat: + /usr/share/zoneinfo/Asia/Atyrau: + /usr/share/zoneinfo/Asia/Baghdad: + /usr/share/zoneinfo/Asia/Bahrain: + /usr/share/zoneinfo/Asia/Baku: + /usr/share/zoneinfo/Asia/Bangkok: + /usr/share/zoneinfo/Asia/Barnaul: + /usr/share/zoneinfo/Asia/Beirut: + /usr/share/zoneinfo/Asia/Bishkek: + /usr/share/zoneinfo/Asia/Brunei: + /usr/share/zoneinfo/Asia/Chita: + /usr/share/zoneinfo/Asia/Choibalsan: + /usr/share/zoneinfo/Asia/Chongqing: + /usr/share/zoneinfo/Asia/Colombo: + /usr/share/zoneinfo/Asia/Damascus: + /usr/share/zoneinfo/Asia/Dhaka: + /usr/share/zoneinfo/Asia/Dili: + /usr/share/zoneinfo/Asia/Dubai: + /usr/share/zoneinfo/Asia/Dushanbe: + /usr/share/zoneinfo/Asia/Famagusta: + /usr/share/zoneinfo/Asia/Gaza: + /usr/share/zoneinfo/Asia/Harbin: + /usr/share/zoneinfo/Asia/Hebron: + /usr/share/zoneinfo/Asia/Ho_Chi_Minh: + /usr/share/zoneinfo/Asia/Hong_Kong: + /usr/share/zoneinfo/Asia/Hovd: + /usr/share/zoneinfo/Asia/Irkutsk: + /usr/share/zoneinfo/Asia/Istanbul: + /usr/share/zoneinfo/Asia/Jakarta: + /usr/share/zoneinfo/Asia/Jayapura: + /usr/share/zoneinfo/Asia/Jerusalem: + /usr/share/zoneinfo/Asia/Kabul: + /usr/share/zoneinfo/Asia/Kamchatka: + /usr/share/zoneinfo/Asia/Karachi: + /usr/share/zoneinfo/Asia/Kashgar: + /usr/share/zoneinfo/Asia/Kathmandu: + /usr/share/zoneinfo/Asia/Khandyga: + /usr/share/zoneinfo/Asia/Kolkata: + /usr/share/zoneinfo/Asia/Krasnoyarsk: + /usr/share/zoneinfo/Asia/Kuala_Lumpur: + /usr/share/zoneinfo/Asia/Kuching: + /usr/share/zoneinfo/Asia/Kuwait: + /usr/share/zoneinfo/Asia/Macau: + /usr/share/zoneinfo/Asia/Magadan: + /usr/share/zoneinfo/Asia/Makassar: + /usr/share/zoneinfo/Asia/Manila: + /usr/share/zoneinfo/Asia/Muscat: + /usr/share/zoneinfo/Asia/Nicosia: + /usr/share/zoneinfo/Asia/Novokuznetsk: + /usr/share/zoneinfo/Asia/Novosibirsk: + /usr/share/zoneinfo/Asia/Omsk: + /usr/share/zoneinfo/Asia/Oral: + /usr/share/zoneinfo/Asia/Phnom_Penh: + /usr/share/zoneinfo/Asia/Pontianak: + /usr/share/zoneinfo/Asia/Pyongyang: + /usr/share/zoneinfo/Asia/Qatar: + /usr/share/zoneinfo/Asia/Qostanay: + /usr/share/zoneinfo/Asia/Qyzylorda: + /usr/share/zoneinfo/Asia/Riyadh: + /usr/share/zoneinfo/Asia/Sakhalin: + /usr/share/zoneinfo/Asia/Samarkand: + /usr/share/zoneinfo/Asia/Seoul: + /usr/share/zoneinfo/Asia/Shanghai: + /usr/share/zoneinfo/Asia/Singapore: + /usr/share/zoneinfo/Asia/Srednekolymsk: + /usr/share/zoneinfo/Asia/Taipei: + /usr/share/zoneinfo/Asia/Tashkent: + /usr/share/zoneinfo/Asia/Tbilisi: + /usr/share/zoneinfo/Asia/Tehran: + /usr/share/zoneinfo/Asia/Tel_Aviv: + /usr/share/zoneinfo/Asia/Thimphu: + /usr/share/zoneinfo/Asia/Tokyo: + /usr/share/zoneinfo/Asia/Tomsk: + /usr/share/zoneinfo/Asia/Ulaanbaatar: + /usr/share/zoneinfo/Asia/Urumqi: + /usr/share/zoneinfo/Asia/Ust-Nera: + /usr/share/zoneinfo/Asia/Vientiane: + /usr/share/zoneinfo/Asia/Vladivostok: + /usr/share/zoneinfo/Asia/Yakutsk: + /usr/share/zoneinfo/Asia/Yangon: + /usr/share/zoneinfo/Asia/Yekaterinburg: + /usr/share/zoneinfo/Asia/Yerevan: + /usr/share/zoneinfo/Europe/Amsterdam: + /usr/share/zoneinfo/Europe/Andorra: + /usr/share/zoneinfo/Europe/Astrakhan: + /usr/share/zoneinfo/Europe/Athens: + /usr/share/zoneinfo/Europe/Belfast: + /usr/share/zoneinfo/Europe/Belgrade: + /usr/share/zoneinfo/Europe/Berlin: + /usr/share/zoneinfo/Europe/Bratislava: + /usr/share/zoneinfo/Europe/Brussels: + /usr/share/zoneinfo/Europe/Bucharest: + /usr/share/zoneinfo/Europe/Budapest: + /usr/share/zoneinfo/Europe/Busingen: + /usr/share/zoneinfo/Europe/Chisinau: + /usr/share/zoneinfo/Europe/Copenhagen: + /usr/share/zoneinfo/Europe/Dublin: + /usr/share/zoneinfo/Europe/Gibraltar: + /usr/share/zoneinfo/Europe/Guernsey: + /usr/share/zoneinfo/Europe/Helsinki: + /usr/share/zoneinfo/Europe/Isle_of_Man: + /usr/share/zoneinfo/Europe/Istanbul: + /usr/share/zoneinfo/Europe/Jersey: + /usr/share/zoneinfo/Europe/Kaliningrad: + /usr/share/zoneinfo/Europe/Kirov: + /usr/share/zoneinfo/Europe/Kyiv: + /usr/share/zoneinfo/Europe/Lisbon: + /usr/share/zoneinfo/Europe/Ljubljana: + /usr/share/zoneinfo/Europe/London: + /usr/share/zoneinfo/Europe/Luxembourg: + /usr/share/zoneinfo/Europe/Madrid: + /usr/share/zoneinfo/Europe/Malta: + /usr/share/zoneinfo/Europe/Mariehamn: + /usr/share/zoneinfo/Europe/Minsk: + /usr/share/zoneinfo/Europe/Monaco: + /usr/share/zoneinfo/Europe/Moscow: + /usr/share/zoneinfo/Europe/Nicosia: + /usr/share/zoneinfo/Europe/Oslo: + /usr/share/zoneinfo/Europe/Paris: + /usr/share/zoneinfo/Europe/Podgorica: + /usr/share/zoneinfo/Europe/Prague: + /usr/share/zoneinfo/Europe/Riga: + /usr/share/zoneinfo/Europe/Rome: + /usr/share/zoneinfo/Europe/Samara: + /usr/share/zoneinfo/Europe/San_Marino: + /usr/share/zoneinfo/Europe/Sarajevo: + /usr/share/zoneinfo/Europe/Saratov: + /usr/share/zoneinfo/Europe/Simferopol: + /usr/share/zoneinfo/Europe/Skopje: + /usr/share/zoneinfo/Europe/Sofia: + /usr/share/zoneinfo/Europe/Stockholm: + /usr/share/zoneinfo/Europe/Tallinn: + /usr/share/zoneinfo/Europe/Tirane: + /usr/share/zoneinfo/Europe/Tiraspol: + /usr/share/zoneinfo/Europe/Ulyanovsk: + /usr/share/zoneinfo/Europe/Vaduz: + /usr/share/zoneinfo/Europe/Vatican: + /usr/share/zoneinfo/Europe/Vienna: + /usr/share/zoneinfo/Europe/Vilnius: + /usr/share/zoneinfo/Europe/Volgograd: + /usr/share/zoneinfo/Europe/Warsaw: + /usr/share/zoneinfo/Europe/Zagreb: + /usr/share/zoneinfo/Europe/Zurich: indian: essential: @@ -102,7 +479,47 @@ slices: essential: - tzdata_config contents: - /usr/share/zoneinfo/Pacific/**: + /usr/share/zoneinfo/Pacific/Apia: + /usr/share/zoneinfo/Pacific/Auckland: + /usr/share/zoneinfo/Pacific/Bougainville: + /usr/share/zoneinfo/Pacific/Chatham: + /usr/share/zoneinfo/Pacific/Chuuk: + /usr/share/zoneinfo/Pacific/Easter: + /usr/share/zoneinfo/Pacific/Efate: + /usr/share/zoneinfo/Pacific/Fakaofo: + /usr/share/zoneinfo/Pacific/Fiji: + /usr/share/zoneinfo/Pacific/Funafuti: + /usr/share/zoneinfo/Pacific/Galapagos: + /usr/share/zoneinfo/Pacific/Gambier: + /usr/share/zoneinfo/Pacific/Guadalcanal: + /usr/share/zoneinfo/Pacific/Guam: + /usr/share/zoneinfo/Pacific/Honolulu: + /usr/share/zoneinfo/Pacific/Johnston: + /usr/share/zoneinfo/Pacific/Kanton: + /usr/share/zoneinfo/Pacific/Kiritimati: + /usr/share/zoneinfo/Pacific/Kosrae: + /usr/share/zoneinfo/Pacific/Kwajalein: + /usr/share/zoneinfo/Pacific/Majuro: + /usr/share/zoneinfo/Pacific/Marquesas: + /usr/share/zoneinfo/Pacific/Midway: + /usr/share/zoneinfo/Pacific/Nauru: + /usr/share/zoneinfo/Pacific/Niue: + /usr/share/zoneinfo/Pacific/Norfolk: + /usr/share/zoneinfo/Pacific/Noumea: + /usr/share/zoneinfo/Pacific/Pago_Pago: + /usr/share/zoneinfo/Pacific/Palau: + /usr/share/zoneinfo/Pacific/Pitcairn: + /usr/share/zoneinfo/Pacific/Pohnpei: + /usr/share/zoneinfo/Pacific/Port_Moresby: + /usr/share/zoneinfo/Pacific/Rarotonga: + /usr/share/zoneinfo/Pacific/Saipan: + /usr/share/zoneinfo/Pacific/Samoa: + /usr/share/zoneinfo/Pacific/Tahiti: + /usr/share/zoneinfo/Pacific/Tarawa: + /usr/share/zoneinfo/Pacific/Tongatapu: + /usr/share/zoneinfo/Pacific/Wake: + /usr/share/zoneinfo/Pacific/Wallis: + /usr/share/zoneinfo/Pacific/Yap: # Install all timezones. zoneinfo: diff --git a/tests/spread/integration/tzdata-legacy/smoke.sh b/tests/spread/integration/tzdata-legacy/smoke.sh new file mode 100755 index 000000000..cf15a5991 --- /dev/null +++ b/tests/spread/integration/tzdata-legacy/smoke.sh @@ -0,0 +1,23 @@ +#!/bin/bash +# +# This script smoke tests each tzdata-legacy slice and it simply checks if all +# symbolic link targets are present. + +set -eu + +PKG="tzdata-legacy" +SDF="${PROJECT_PATH}/slices/${PKG}.yaml" + +slices=$(yq '.slices | keys | .[]' "${SDF}") +for s in ${slices[@]}; do + slice="test$s" + echo "Testing $slice ..." + rootfs="$(install-slices "$slice")" + + find "$rootfs" -type l -printf "%P\0" | while IFS= read -r -d $'\0' file; do + if [[ ! -e "$rootfs/$file" ]]; then + target="$(readlink "$rootfs/$file")" + echo "symlink /$file -> $readlink broken" + fi + done +done diff --git a/tests/spread/integration/tzdata-legacy/task.yaml b/tests/spread/integration/tzdata-legacy/task.yaml new file mode 100644 index 000000000..280d1506b --- /dev/null +++ b/tests/spread/integration/tzdata-legacy/task.yaml @@ -0,0 +1,16 @@ +summary: Integration tests for tzdata-legacy + +prepare: | + # Deb arch to GOARCH. + arch="$(dpkg --print-architecture | sed -e 's/armhf/arm/g' -e 's/ppc64el/ppc64le/g')" + # Install yq. + wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_${arch} \ + -O /usr/bin/yq + chmod +x /usr/bin/yq + yq --version + # The smoke.sh script needs find and readlink binaries. + apt install -y findutils coreutils + +execute: | + # Run smoke tests. + ./smoke.sh