Compare commits

..
Author SHA1 Message Date
LinuxServer-CI b04a4da062 Bot Updating Package Versions 2023-11-21 22:01:06 +00:00
LinuxServer-CI f735fc7393 Bot Updating Package Versions 2023-11-21 03:17:35 +00:00
LinuxServer-CI 0d0ddc27ce Bot Updating Package Versions 2023-11-20 20:55:39 +00:00
LinuxServer-CI 18fc35901c Bot Updating Package Versions 2023-11-20 06:55:53 +00:00
LinuxServer-CI 96e22d53cd Bot Updating Package Versions 2023-11-20 05:43:03 +00:00
LinuxServer-CI b9f855eaaa Bot Updating Package Versions 2023-11-20 04:23:42 +00:00
LinuxServer-CI 9c2c41fd85 Bot Updating Package Versions 2023-11-20 03:45:25 +00:00
LinuxServer-CI 65c606be6f Bot Updating Package Versions 2023-11-20 00:13:12 +00:00
LinuxServer-CI 008a0f973a Bot Updating Package Versions 2023-11-19 21:26:22 +00:00
LinuxServer-CI 32ef59eb6e Bot Updating Package Versions 2023-11-19 16:57:24 +00:00
LinuxServer-CI a5d89864a0 Bot Updating Package Versions 2023-11-18 22:39:06 +00:00
LinuxServer-CI 8a8a8f7c56 Bot Updating Package Versions 2023-11-18 01:58:53 +00:00
LinuxServer-CI 07501cf954 Bot Updating Package Versions 2023-11-18 01:36:02 +00:00
LinuxServer-CI 36c2ea8059 Bot Updating Package Versions 2023-11-18 01:12:19 +00:00
LinuxServer-CI 7dc7ca3e3c Bot Updating Package Versions 2023-11-17 15:25:46 +00:00
LinuxServer-CI af2d5bce42 Bot Updating Package Versions 2023-11-17 04:18:51 +00:00
LinuxServer-CI f5bcafa866 Bot Updating Templated Files 2023-11-17 04:15:15 +00:00
LinuxServer-CI 7f73d005b9 Bot Updating Package Versions 2023-11-15 18:16:02 +00:00
LinuxServer-CI 85939e003a Bot Updating Package Versions 2023-11-14 19:21:35 +00:00
LinuxServer-CI 020153d896 Bot Updating Package Versions 2023-11-14 17:31:37 +00:00
LinuxServer-CI add9889d98 Bot Updating Package Versions 2023-11-14 13:46:33 +00:00
LinuxServer-CI e13b0e823e Bot Updating Package Versions 2023-11-11 19:21:51 +00:00
LinuxServer-CI 61e8cd0511 Bot Updating Package Versions 2023-11-10 04:59:47 +00:00
LinuxServer-CI 45219f5bc9 Bot Updating Package Versions 2023-11-10 02:20:32 +00:00
LinuxServer-CI 36164e72d6 Bot Updating Package Versions 2023-11-09 19:30:50 +00:00
LinuxServer-CI 1e64bc36fe Bot Updating Package Versions 2023-11-08 19:10:11 +00:00
LinuxServer-CI 23e2c97c08 Bot Updating Package Versions 2023-11-08 16:21:06 +00:00
LinuxServer-CI 6889a78662 Bot Updating Package Versions 2023-11-02 12:33:31 +00:00
LinuxServer-CI f4fc27139c Bot Updating Package Versions 2023-11-01 12:05:48 +00:00
LinuxServer-CI 8e80a88da4 Bot Updating Package Versions 2023-10-30 13:02:18 +00:00
LinuxServer-CI ddac920b57 Bot Updating Package Versions 2023-10-30 12:33:13 +00:00
LinuxServer-CI 401206711f Bot Updating Package Versions 2023-10-29 09:31:41 +00:00
LinuxServer-CI 1e6b3fd4e9 Bot Updating Package Versions 2023-10-29 08:37:39 +00:00
LinuxServer-CI 33809c2eac Bot Updating Package Versions 2023-10-22 08:38:17 +00:00
LinuxServer-CI f70bbafc76 Bot Updating Package Versions 2023-10-22 02:21:51 +00:00
LinuxServer-CI 251710b1f1 Bot Updating Package Versions 2023-10-21 20:29:31 +00:00
LinuxServer-CI fa880ecf18 Bot Updating Package Versions 2023-10-20 20:06:40 +00:00
LinuxServer-CI ba728378db Bot Updating Package Versions 2023-10-17 16:36:06 +00:00
LinuxServer-CI 7a76608fef Bot Updating Package Versions 2023-10-17 12:14:08 +00:00
LinuxServer-CI 3294623588 Bot Updating Package Versions 2023-10-16 03:55:53 +00:00
LinuxServer-CI e1c87b62da Bot Updating Package Versions 2023-10-15 05:58:58 +00:00
LinuxServer-CI ccc99575ed Bot Updating Package Versions 2023-10-15 02:37:18 +00:00
LinuxServer-CI c360a6bc99 Bot Updating Package Versions 2023-10-14 18:19:53 +00:00
LinuxServer-CI fa86952a89 Bot Updating Package Versions 2023-10-14 08:31:26 +00:00
LinuxServer-CI f30100ad04 Bot Updating Package Versions 2023-10-12 02:41:28 +00:00
LinuxServer-CI 082c525397 Bot Updating Package Versions 2023-10-11 12:38:14 +00:00
LinuxServer-CI 3934106318 Bot Updating Package Versions 2023-10-11 10:55:17 +00:00
LinuxServer-CI 134bb6a820 Bot Updating Package Versions 2023-10-11 03:01:29 +00:00
LinuxServer-CI 5db097117e Bot Updating Package Versions 2023-10-11 02:10:13 +00:00
LinuxServer-CI bd964639c4 Bot Updating Package Versions 2023-10-11 01:22:36 +00:00
LinuxServer-CI 38f17fdfea Bot Updating Package Versions 2023-10-11 00:18:35 +00:00
LinuxServer-CI 9c4c46016f Bot Updating Package Versions 2023-10-10 05:42:52 +00:00
LinuxServer-CI b0f81f6313 Bot Updating Package Versions 2023-10-09 23:44:25 +00:00
LinuxServer-CI 0218d2834d Bot Updating Package Versions 2023-10-08 09:32:38 +00:00
LinuxServer-CI 005387c834 Bot Updating Package Versions 2023-10-07 23:19:16 +00:00
LinuxServer-CI 9b5410b826 Bot Updating Package Versions 2023-10-07 22:39:52 +00:00
LinuxServer-CI 8dcc6e6cfd Bot Updating Package Versions 2023-10-07 21:23:39 +00:00
LinuxServer-CI 4fe071d381 Bot Updating Templated Files 2023-10-07 21:20:02 +00:00
LinuxServer-CI b1d0fb753f Bot Updating Templated Files 2023-10-07 21:18:22 +00:00
LinuxServer-CI f8ecd5a020 Bot Updating Package Versions 2023-10-05 00:18:01 +00:00
LinuxServer-CI 4a14f915d2 Bot Updating Package Versions 2023-10-03 21:41:53 +00:00
LinuxServer-CI e3017cc7dc Bot Updating Package Versions 2023-10-01 19:45:33 +00:00
LinuxServer-CI 882d4cfefa Bot Updating Package Versions 2023-10-01 15:07:32 +00:00
LinuxServer-CI 0571dfb89a Bot Updating Package Versions 2023-09-27 20:51:00 +00:00
LinuxServer-CI 8d423a3c2e Bot Updating Package Versions 2023-09-27 17:21:59 +00:00
LinuxServer-CI bf61cd61f7 Bot Updating Package Versions 2023-09-24 13:58:45 +00:00
LinuxServer-CI 930861f503 Bot Updating Package Versions 2023-09-20 18:59:42 +00:00
LinuxServer-CI dff897efaf Bot Updating Package Versions 2023-09-19 19:32:24 +00:00
LinuxServer-CI 4e4675fb69 Bot Updating Package Versions 2023-09-19 11:42:33 +00:00
LinuxServer-CI 02d3db3dff Bot Updating Package Versions 2023-09-19 01:59:34 +00:00
LinuxServer-CI 462bc82ad0 Bot Updating Package Versions 2023-09-18 20:28:38 +00:00
LinuxServer-CI 19711f92ee Bot Updating Package Versions 2023-09-18 12:50:24 +00:00
LinuxServer-CI d801fb4a95 Bot Updating Package Versions 2023-09-18 12:33:04 +00:00
LinuxServer-CI fd7af85b38 Bot Updating Package Versions 2023-09-18 01:39:28 +00:00
LinuxServer-CI c56cd2aea5 Bot Updating Package Versions 2023-09-18 01:16:23 +00:00
LinuxServer-CI c0ee5a2060 Bot Updating Package Versions 2023-09-17 09:06:46 +00:00
LinuxServer-CI 958b77e14c Bot Updating Package Versions 2023-09-15 13:49:29 +00:00
LinuxServer-CI 8acd221aa5 Bot Updating Package Versions 2023-09-14 21:50:25 +00:00
LinuxServer-CI 4dcf6490a6 Bot Updating Package Versions 2023-09-13 19:56:45 +00:00
LinuxServer-CI 71e0701c8a Bot Updating Package Versions 2023-09-12 17:48:12 +00:00
LinuxServer-CI 0994176925 Bot Updating Package Versions 2023-09-12 17:07:30 +00:00
LinuxServer-CI 070e56b1ab Bot Updating Package Versions 2023-09-12 10:13:24 +00:00
LinuxServer-CI fea33889a4 Bot Updating Package Versions 2023-09-11 20:27:11 +00:00
LinuxServer-CI 1039262478 Bot Updating Package Versions 2023-09-11 18:34:27 +00:00
LinuxServer-CI 34ef18f4a4 Bot Updating Package Versions 2023-09-11 15:57:34 +00:00
LinuxServer-CI 66d6c056a7 Bot Updating Package Versions 2023-09-11 08:54:09 +00:00
LinuxServer-CI a2e2d118ec Bot Updating Package Versions 2023-09-11 08:30:57 +00:00
LinuxServer-CI 82fab91db2 Bot Updating Package Versions 2023-09-11 02:37:27 +00:00
LinuxServer-CI 2f678e894c Bot Updating Package Versions 2023-09-10 21:03:50 +00:00
LinuxServer-CI 7f80a5cb4f Bot Updating Package Versions 2023-09-10 20:17:41 +00:00
LinuxServer-CI 06931c9f8a Bot Updating Package Versions 2023-09-10 18:22:51 +00:00
LinuxServer-CI 259972cff3 Bot Updating Package Versions 2023-09-09 11:31:28 +00:00
LinuxServer-CI 05c2645aff Bot Updating Package Versions 2023-09-09 06:14:01 +00:00
LinuxServer-CI 2ee7bbcbb6 Bot Updating Package Versions 2023-09-08 05:31:27 +00:00
LinuxServer-CI 4fc01b1dd1 Bot Updating Package Versions 2023-09-06 07:31:24 +00:00
LinuxServer-CI 062af8447a Bot Updating Package Versions 2023-09-06 05:41:30 +00:00
LinuxServer-CI fdf71a0308 Bot Updating Package Versions 2023-09-03 23:33:30 +00:00
LinuxServer-CI a89d23c707 Bot Updating Package Versions 2023-09-03 02:34:14 +00:00
LinuxServer-CI d1d780e4c1 Bot Updating Package Versions 2023-09-03 02:00:12 +00:00
LinuxServer-CI ec4166c43e Bot Updating Package Versions 2023-09-02 20:50:43 +00:00
LinuxServer-CI 06c93ea35e Bot Updating Package Versions 2023-09-02 03:18:33 +00:00
LinuxServer-CI 93830ba7b9 Bot Updating Package Versions 2023-09-01 02:38:16 +00:00
LinuxServer-CI e6adf94c0e Bot Updating Package Versions 2023-08-29 20:11:37 +00:00
LinuxServer-CI c18cd506c7 Bot Updating Package Versions 2023-08-29 17:32:42 +00:00
LinuxServer-CI 90eb4126c3 Bot Updating Package Versions 2023-08-29 16:36:14 +00:00
LinuxServer-CI 24c2e77edb Bot Updating Package Versions 2023-08-29 06:00:26 +00:00
LinuxServer-CI 9d076578fe Bot Updating Package Versions 2023-08-29 03:14:19 +00:00
LinuxServer-CI b1bdf63556 Bot Updating Package Versions 2023-08-29 00:59:28 +00:00
LinuxServer-CI 46738f002e Bot Updating Package Versions 2023-08-28 23:19:33 +00:00
LinuxServer-CI 32f21c9644 Bot Updating Package Versions 2023-08-28 01:05:20 +00:00
LinuxServer-CI 8a48b3edeb Bot Updating Package Versions 2023-08-27 16:48:38 +00:00
LinuxServer-CI 9a92fe345d Bot Updating Package Versions 2023-08-27 06:33:34 +00:00
LinuxServer-CI d6b754b540 Bot Updating Package Versions 2023-08-26 18:13:32 +00:00
LinuxServer-CI 8febacac29 Bot Updating Package Versions 2023-08-23 18:01:03 +00:00
LinuxServer-CI 4f3a3e45c5 Bot Updating Package Versions 2023-08-23 13:07:02 +00:00
LinuxServer-CI 850cace933 Bot Updating Package Versions 2023-08-23 02:53:10 +00:00
LinuxServer-CI bcd7473ebf Bot Updating Package Versions 2023-08-22 21:04:34 +00:00
LinuxServer-CI ee9240ec6f Bot Updating Package Versions 2023-08-22 14:32:20 +00:00
LinuxServer-CI 0577455e78 Bot Updating Package Versions 2023-08-22 03:41:07 +00:00
LinuxServer-CI 8699423ab5 Bot Updating Package Versions 2023-08-21 04:28:40 +00:00
LinuxServer-CI 6038364c10 Bot Updating Package Versions 2023-08-21 03:43:47 +00:00
LinuxServer-CI bb393da02c Bot Updating Package Versions 2023-08-21 01:54:37 +00:00
LinuxServer-CI 7f617a5007 Bot Updating Package Versions 2023-08-20 22:31:22 +00:00
LinuxServer-CI e40ae1adbe Bot Updating Package Versions 2023-08-20 21:31:17 +00:00
LinuxServer-CI b14d07f72a Bot Updating Package Versions 2023-08-20 20:41:40 +00:00
LinuxServer-CI 4c623eec25 Bot Updating Package Versions 2023-08-20 19:52:06 +00:00
LinuxServer-CI 5943606f9d Bot Updating Package Versions 2023-08-20 19:31:00 +00:00
LinuxServer-CI 2a1ec5c27a Bot Updating Package Versions 2023-08-20 18:58:13 +00:00
LinuxServer-CI 36f40dc1a6 Bot Updating Package Versions 2023-08-20 16:56:02 +00:00
LinuxServer-CI 20057097fa Bot Updating Package Versions 2023-08-20 16:00:43 +00:00
LinuxServer-CI e5dc97049e Bot Updating Package Versions 2023-08-20 10:42:42 +00:00
LinuxServer-CI 82d088adb0 Bot Updating Package Versions 2023-08-19 21:17:07 +00:00
LinuxServer-CI 99e80d455e Bot Updating Package Versions 2023-08-19 14:50:32 +00:00
LinuxServer-CI 254d0bc827 Bot Updating Package Versions 2023-08-19 11:26:30 +00:00
LinuxServer-CI 1bb0de77ab Bot Updating Package Versions 2023-08-19 10:54:39 +00:00
LinuxServer-CI d015d5dfea Bot Updating Package Versions 2023-08-19 10:16:04 +00:00
LinuxServer-CI 08f95d729d Bot Updating Package Versions 2023-08-19 05:06:33 +00:00
LinuxServer-CI 212e1702fc Bot Updating Package Versions 2023-08-19 03:31:13 +00:00
LinuxServer-CI f73e8b5e03 Bot Updating Package Versions 2023-08-19 03:09:25 +00:00
LinuxServer-CI 4cc179143e Bot Updating Package Versions 2023-08-18 16:02:02 +00:00
LinuxServer-CI 4640eeb7fa Bot Updating Package Versions 2023-08-18 08:29:30 +00:00
LinuxServer-CI 0fa82a88a1 Bot Updating Package Versions 2023-08-18 04:14:49 +00:00
LinuxServer-CI 3635fae380 Bot Updating Package Versions 2023-08-17 21:59:53 +00:00
LinuxServer-CI 020f83388e Bot Updating Package Versions 2023-08-17 20:25:57 +00:00
LinuxServer-CI 532380c92e Bot Updating Package Versions 2023-08-17 12:01:39 +00:00
LinuxServer-CI 5a77ce81a6 Bot Updating Package Versions 2023-08-17 03:12:15 +00:00
LinuxServer-CI 0b39139702 Bot Updating Package Versions 2023-08-17 02:38:45 +00:00
LinuxServer-CI 542ea83e3e Bot Updating Package Versions 2023-08-15 15:15:37 +00:00
LinuxServer-CI 9261290edc Bot Updating Package Versions 2023-08-14 19:47:52 +00:00
LinuxServer-CI 5bcf8655bf Bot Updating Package Versions 2023-08-14 00:05:03 +00:00
LinuxServer-CI ec794ea509 Bot Updating Package Versions 2023-08-13 18:54:09 +00:00
LinuxServer-CI a54ccfc48b Bot Updating Package Versions 2023-08-13 02:30:53 +00:00
LinuxServer-CI 56855b429e Bot Updating Package Versions 2023-08-12 02:31:16 +00:00
LinuxServer-CI 0536c6db62 Bot Updating Package Versions 2023-08-12 01:49:29 +00:00
LinuxServer-CI be9cfb5760 Bot Updating Package Versions 2023-08-11 22:44:39 +00:00
LinuxServer-CI 3043f86227 Bot Updating Package Versions 2023-08-10 16:17:29 +00:00
LinuxServer-CI ca64d4b3e3 Bot Updating Package Versions 2023-08-10 10:37:42 +00:00
LinuxServer-CI 6280d6e4c5 Bot Updating Package Versions 2023-08-09 16:14:03 +00:00
LinuxServer-CI 6e9d0b17f7 Bot Updating Package Versions 2023-08-09 13:46:28 +00:00
LinuxServer-CI 87b6c54e50 Bot Updating Package Versions 2023-08-09 08:20:58 +00:00
LinuxServer-CI 140fe097cd Bot Updating Package Versions 2023-08-07 03:31:10 +00:00
LinuxServer-CI 3d1aa1ae5a Bot Updating Package Versions 2023-08-07 03:01:46 +00:00
LinuxServer-CI 6d2f663763 Bot Updating Package Versions 2023-08-06 17:31:28 +00:00
LinuxServer-CI 74c91df7ec Bot Updating Package Versions 2023-08-05 19:20:10 +00:00
LinuxServer-CI 88cf26d60d Bot Updating Package Versions 2023-08-04 10:02:15 +00:00
LinuxServer-CI d9f3249030 Bot Updating Package Versions 2023-08-03 19:32:38 +00:00
LinuxServer-CI 266aaa38f4 Bot Updating Package Versions 2023-08-02 09:56:26 +00:00
LinuxServer-CI 08a3e23ab6 Bot Updating Package Versions 2023-07-29 16:35:19 +00:00
LinuxServer-CI 44b2c60cf7 Bot Updating Package Versions 2023-07-29 07:09:25 +00:00
LinuxServer-CI efb2060bd1 Bot Updating Package Versions 2023-07-23 00:50:22 +00:00
LinuxServer-CI 1af96caf38 Bot Updating Package Versions 2023-07-19 22:14:04 +00:00
LinuxServer-CI db78137a54 Bot Updating Package Versions 2023-07-16 00:53:16 +00:00
LinuxServer-CI 9ccfe2ebd6 Bot Updating Package Versions 2023-07-15 03:08:59 +00:00
LinuxServer-CI 0789a1cd0c Bot Updating Package Versions 2023-07-14 02:51:55 +00:00
LinuxServer-CI fb9dc4d893 Bot Updating Package Versions 2023-07-09 12:52:21 +00:00
LinuxServer-CI 951b2d798c Bot Updating Package Versions 2023-07-02 09:41:43 +00:00
LinuxServer-CI 6e70758d30 Bot Updating Templated Files 2023-07-02 09:39:07 +00:00
LinuxServer-CI 1f64e3c9bb Bot Updating Package Versions 2023-06-18 09:38:37 +00:00
LinuxServer-CI 6e3ae95972 Bot Updating Package Versions 2023-06-15 20:52:59 +00:00
LinuxServer-CI 17829c9aa0 Bot Updating Package Versions 2023-06-11 20:10:06 +00:00
AdamandGitHub d4f629302c Merge pull request #209 from linuxserver/nightly-3.18 2023-06-11 21:07:32 +01:00
TheSpad 3474502db2 Rebase to 3.18 (nightly) 2023-06-06 15:07:57 +01:00
LinuxServer-CI 974910a4d3 Bot Updating Package Versions 2023-06-05 12:52:58 +00:00
LinuxServer-CI b6967238c6 Bot Updating Package Versions 2023-06-04 16:58:33 +00:00
LinuxServer-CI 8a3e1943af Bot Updating Package Versions 2023-05-28 14:11:44 +00:00
LinuxServer-CI 2da0567d88 Bot Updating Templated Files 2023-05-23 10:25:11 +00:00
LinuxServer-CI c31f706215 Bot Updating Package Versions 2023-05-21 16:58:10 +00:00
LinuxServer-CI 5015da2913 Bot Updating Package Versions 2023-05-19 15:49:06 +00:00
LinuxServer-CI 2195e74e1c Bot Updating Package Versions 2023-05-06 20:10:33 +00:00
LinuxServer-CI f5523f5c11 Bot Updating Package Versions 2023-05-03 06:45:08 +00:00
LinuxServer-CI 7bce6165a3 Bot Updating Package Versions 2023-04-29 15:13:45 -05:00
LinuxServer-CI d678cf05dc Bot Updating Templated Files 2023-04-28 22:50:52 -05:00
LinuxServer-CI 82e2148ff9 Bot Updating Templated Files 2023-04-28 22:49:02 -05:00
LinuxServer-CI f5f2abff4e Bot Updating Package Versions 2023-04-23 01:57:22 +00:00
LinuxServer-CI f2276d1873 Bot Updating Package Versions 2023-04-22 17:34:18 +00:00
LinuxServer-CI c4d8a38871 Bot Updating Package Versions 2023-04-15 19:00:08 +02:00
LinuxServer-CI e34d1b1208 Bot Updating Package Versions 2023-04-13 19:48:06 -05:00
LinuxServer-CI 9a535a3f6e Bot Updating Package Versions 2023-04-09 11:57:22 -05:00
LinuxServer-CI 69b8486827 Bot Updating Templated Files 2023-04-02 16:08:08 -05:00
LinuxServer-CI e0937f2a4d Bot Updating Templated Files 2023-04-02 23:06:33 +02:00
LinuxServer-CI 1fd35ffaf0 Bot Updating Templated Files 2023-04-02 23:05:00 +02:00
LinuxServer-CI adb8d83f95 Bot Updating Package Versions 2023-03-30 02:13:52 +02:00
LinuxServer-CI 040354aa48 Bot Updating Package Versions 2023-03-25 02:14:41 +01:00
LinuxServer-CI 94e83f5bfa Bot Updating Package Versions 2023-03-06 10:03:18 -06:00
LinuxServer-CI 977e02c24c Bot Updating Templated Files 2023-03-06 09:59:27 -06:00
LinuxServer-CI a25dd2470b Bot Updating Package Versions 2023-02-24 03:57:21 -06:00
AdamandGitHub 6aac67024b Merge pull request #198 from linuxserver/nightly-ping 2023-02-24 09:54:12 +00:00
TheSpad cd18356e72 Use ping endpoint for readiness check. 2023-02-23 15:51:23 +00:00
LinuxServer-CI 5b84f3afab Bot Updating Package Versions 2023-02-20 16:59:30 +01:00
LinuxServer-CI 9459df4644 Bot Updating Templated Files 2023-02-11 20:07:07 +01:00
LinuxServer-CI 38d2a5d5cf Bot Updating Templated Files 2023-02-11 20:05:48 +01:00
LinuxServer-CI c9b2984ec4 Bot Updating Package Versions 2023-01-21 12:12:34 -06:00
LinuxServer-CI 54011bff8f Bot Updating Package Versions 2023-01-16 09:58:59 -06:00
LinuxServer-CI dad405f880 Bot Updating Package Versions 2023-01-02 09:58:44 -06:00
LinuxServer-CI ea0d6ded9d Bot Updating Package Versions 2022-12-27 22:57:15 +01:00
LinuxServer-CI ef8a97bfc9 Bot Updating Package Versions 2022-12-21 19:08:37 +01:00
RoxedusandGitHub 316eac60a1 Merge pull request #191 from linuxserver/nightly-3.17 2022-12-21 19:05:33 +01:00
TheSpad a12ea5060a Rebase nightly to 3.17 2022-12-19 17:31:27 +00:00
LinuxServer-CI b7e01eccf1 Bot Updating Templated Files 2022-11-29 00:02:09 +01:00
LinuxServer-CI d8ab9ca13d Bot Updating Templated Files 2022-11-28 17:00:42 -06:00
LinuxServer-CI b6d04cdcf7 Bot Updating Templated Files 2022-11-28 16:59:12 -06:00
LinuxServer-CI e1dbb63eff Bot Updating Package Versions 2022-11-21 15:59:04 +00:00
LinuxServer-CI f932d9be25 Bot Updating Package Versions 2022-11-13 03:52:39 +01:00
LinuxServer-CI bd3a32947a Bot Updating Templated Files 2022-11-13 03:49:21 +01:00
LinuxServer-CI 5dc60f2726 Bot Updating Package Versions 2022-11-04 21:51:53 -05:00
LinuxServer-CI 855cd7abb9 Bot Updating Package Versions 2022-10-31 11:00:16 -05:00
LinuxServer-CI 5ce691335f Bot Updating Package Versions 2022-10-28 23:51:19 -05:00
LinuxServer-CI ca579eaa29 Bot Updating Templated Files 2022-10-28 23:48:11 -05:00
AdamandGitHub 6a31d16955 Merge pull request #188 from linuxserver/s6v3-nightly 2022-10-29 05:46:44 +01:00
TheSpad bfdccec4c7 Update CI path 2022-10-27 20:30:16 +01:00
TheSpad 568a47e192 Rebase nightly to 3.16, migrate to s6v3 2022-10-27 19:42:52 +01:00
LinuxServer-CI 350553eec6 Bot Updating Templated Files 2022-09-17 22:40:05 -05:00
LinuxServer-CI d118562a6e Bot Updating Package Versions 2022-09-04 13:00:47 -05:00
LinuxServer-CI 5b593a68c4 Bot Updating Package Versions 2022-08-27 02:00:19 -05:00
LinuxServer-CI 805a7fb2be Bot Updating Package Versions 2022-08-09 21:31:45 -05:00
LinuxServer-CI 79225e2192 Bot Updating Package Versions 2022-08-08 06:24:27 +02:00
LinuxServer-CI 1710c00de5 Bot Updating Package Versions 2022-08-01 18:00:33 +02:00
LinuxServer-CI f2f676531a Bot Updating Package Versions 2022-07-21 23:00:51 +02:00
LinuxServer-CI 2eb8e955eb Bot Updating Package Versions 2022-07-10 14:00:50 -05:00
LinuxServer-CI 81ecfb7d86 Bot Updating Package Versions 2022-07-01 22:02:54 -05:00
LinuxServer-CI 5f0982257a Bot Updating Package Versions 2022-05-12 04:46:27 +02:00
LinuxServer-CI b10a15c872 Bot Updating Package Versions 2022-05-02 06:43:26 +02:00
LinuxServer-CI 4e2ce1ed99 Bot Updating Templated Files 2022-05-02 06:40:55 +02:00
LinuxServer-CI 5685df4bad Bot Updating Templated Files 2022-05-02 06:39:39 +02:00
LinuxServer-CI 2f398ad9bb Bot Updating Package Versions 2022-04-15 04:50:41 +02:00
LinuxServer-CI 53a3e22539 Bot Updating Package Versions 2022-04-04 17:58:50 +02:00
LinuxServer-CI eb563bf7c6 Bot Updating Package Versions 2022-03-29 04:26:29 +02:00
LinuxServer-CI 1f5041963a Bot Updating Package Versions 2022-03-27 04:15:24 +02:00
LinuxServer-CI a0e055307a Bot Updating Package Versions 2022-03-20 12:04:02 -05:00
RoxedusandGitHub fe7e736244 Merge pull request #171 from linuxserver/nightly-remove-warning 2022-03-08 16:45:57 +01:00
TheSpad 7827015358 Remove alpine warning 2022-03-07 17:50:36 +00:00
LinuxServer-CI 6a95881148 Bot Updating Package Versions 2022-02-23 00:00:12 +01:00
LinuxServer-CI 6562fe2254 Bot Updating Package Versions 2022-02-05 21:06:52 +01:00
RoxedusandGitHub 0ef59632af Merge pull request #162 from linuxserver/make-nightly-alpine 2022-02-05 21:04:19 +01:00
TheSpad 8a22c1ada2 Add PackageAuthor link 2022-02-04 18:28:09 +00:00
TheSpad 6dc9fb5231 Add radarr Health warning about Alpine rebase 2022-02-04 11:54:39 +00:00
TheSpad dee8c4945c Rebase nightly branch to Alpine 2022-02-04 11:37:22 +00:00
LinuxServer-CI c84b997e79 Bot Updating Package Versions 2022-01-19 07:00:27 +01:00
LinuxServer-CI edc4cf5e9d Bot Updating Package Versions 2022-01-14 04:06:11 +01:00
LinuxServer-CI 183419430e Bot Updating Package Versions 2021-12-21 07:01:18 +01:00
LinuxServer-CI 53a1038bf8 Bot Updating Templated Files 2021-12-18 18:12:47 +01:00
LinuxServer-CI 7ffeb317dd Bot Updating Templated Files 2021-12-18 18:11:44 +01:00
LinuxServer-CI 734d896fbb Bot Updating Package Versions 2021-12-14 23:01:20 +01:00
LinuxServer-CI af3042a3cd Bot Updating Package Versions 2021-12-13 13:55:49 +01:00
aptalcaandGitHub fa53367b3c Merge pull request #153 from linuxserver/ffprobe/nightly
mediainfo is dead, long live ffprobe
2021-12-13 07:51:51 -05:00
Roxedus 8bd305244b mediainfo is dead, long live ffprobe 2021-12-13 12:28:27 +01:00
LinuxServer-CI 455f66aaef Bot Updating Package Versions 2021-11-24 21:01:06 +01:00
LinuxServer-CI d38aa8388d Bot Updating Package Versions 2021-11-17 14:13:41 +01:00
LinuxServer-CI cf04c423ec Bot Updating Package Versions 2021-11-09 08:00:32 +01:00
LinuxServer-CI bcf5ad2269 Bot Updating Package Versions 2021-11-02 17:00:32 +01:00
aptalcaandGitHub 1eb9d12ae5 Merge pull request #149 from linuxserver/umask/nightly
Remove umask_set
2021-10-17 13:29:56 -04:00
Roxedus 6683bb160f Remove umask_set 2021-10-17 17:31:38 +02:00
LinuxServer-CI f77e2c4486 Bot Updating Package Versions 2021-10-14 16:01:00 +02:00
LinuxServer-CI 50f7461446 Bot Updating Package Versions 2021-10-02 18:02:31 +02:00
LinuxServer-CI 87a5f64c73 Bot Updating Templated Files 2021-10-02 17:59:56 +02:00
LinuxServer-CI cecaed48ae Bot Updating Templated Files 2021-10-02 17:58:50 +02:00
LinuxServer-CI 48a14428ae Bot Updating Package Versions 2021-09-26 03:49:26 +02:00
LinuxServer-CI 27705d75b1 Bot Updating Package Versions 2021-09-20 17:58:52 +02:00
LinuxServer-CI 1a4a63f22b Bot Updating Package Versions 2021-09-01 17:00:24 +02:00
LinuxServer-CI 726b23f73d Bot Updating Package Versions 2021-08-28 10:02:30 +02:00
LinuxServer-CI 55c92a6c1c Bot Updating Templated Files 2021-08-28 09:59:18 +02:00
LinuxServer-CI db1f45df0b Bot Updating Package Versions 2021-08-21 07:02:25 +02:00
LinuxServer-CI eb0ff2244c Bot Updating Package Versions 2021-08-04 02:00:26 +02:00
LinuxServer-CI 37f197a41f Bot Updating Package Versions 2021-07-29 16:00:48 +02:00
LinuxServer-CI 6359cb59dc Bot Updating Package Versions 2021-07-24 22:01:01 +02:00
RoxedusandGitHub 2971233ea8 Merge pull request #144 from linuxserver/runtime/nigthly 2021-07-13 20:43:32 +02:00
LinuxServer-CI e9c6f599cd Bot Updating Package Versions 2021-07-12 15:59:59 +00:00
Roxedus 26b07afc79 Use runtime when checking for updates. 2021-07-12 00:48:40 +02:00
LinuxServer-CI 4bc59c86e3 Bot Updating Package Versions 2021-07-05 16:03:09 +00:00
LinuxServer-CI 8c93621ff6 Bot Updating Templated Files 2021-07-05 16:00:08 +00:00
LinuxServer-CI cf6520bba1 Bot Updating Templated Files 2021-07-05 15:58:39 +00:00
LinuxServer-CI 10bbb91dbd Bot Updating Package Versions 2021-06-12 04:08:36 +00:00
LinuxServer-CI 9d15e77f7d Bot Updating Package Versions 2021-05-27 12:21:22 +00:00
LinuxServer-CI f8e41fb21f Bot Updating Package Versions 2021-05-04 14:43:36 +01:00
LinuxServer-CI 68ece5b5f5 Bot Updating Package Versions 2021-04-27 16:00:33 +01:00
LinuxServer-CI 68fb51b0b4 Bot Updating Package Versions 2021-04-22 22:09:01 -04:00
LinuxServer-CI aa3f06613d Bot Updating Templated Files 2021-04-17 22:58:34 +01:00
LinuxServer-CI 5a313bac77 Bot Updating Templated Files 2021-04-17 21:57:07 +00:00
LinuxServer-CI 2e7ee4c600 Bot Updating Package Versions 2021-04-13 10:06:24 +00:00
LinuxServer-CI 8bf4b0e56a Bot Updating Package Versions 2021-04-08 17:06:20 +01:00
LinuxServer-CI e360bb6626 Bot Updating Package Versions 2021-03-31 13:20:12 +00:00
LinuxServer-CI 3734319ff4 Bot Updating Package Versions 2021-03-30 05:05:26 -04:00
LinuxServer-CI a402838292 Bot Updating Package Versions 2021-03-09 13:10:09 +00:00
LinuxServer-CI 4b10c2c9f5 Bot Updating Package Versions 2021-02-25 04:01:07 +00:00
LinuxServer-CI 8b523e3fce Bot Updating Package Versions 2021-02-21 20:00:31 +00:00
LinuxServer-CI 10baed0faf Bot Updating Templated Files 2021-02-14 01:59:35 -05:00
LinuxServer-CI af2d31d162 Bot Updating Templated Files 2021-02-14 06:58:14 +00:00
LinuxServer-CI d948a3d684 Bot Updating Package Versions 2021-02-10 13:16:19 +00:00
LinuxServer-CI a8bbc6b789 Bot Updating Package Versions 2021-02-03 04:09:08 +00:00
LinuxServer-CI 3f95eab940 Bot Updating Package Versions 2021-01-30 21:03:57 +00:00
LinuxServer-CI 4a6d8165f4 Bot Updating Package Versions 2021-01-27 15:03:32 -05:00
LinuxServer-CI a23ead6b2c Bot Updating Package Versions 2021-01-20 04:40:39 -05:00
aptalcaandGitHub a171c5c219 Merge pull request #133 from linuxserver/nightly-deprecate-umask_set
Deprecate UMASK_SET in favor of UMASK in baseimage
2021-01-18 08:30:38 -05:00
Roxedus 892b39acb5 Deprecate UMASK_SET in favor of UMASK in baseimage 2021-01-18 09:49:00 +01:00
LinuxServer-CI 342996e1d0 Bot Updating Package Versions 2021-01-17 03:50:12 +00:00
LinuxServer-CI 6bb53a8070 Bot Updating Templated Files 2021-01-12 23:12:47 -05:00
LinuxServer-CI 2731005b9e Bot Updating Package Versions 2021-01-09 02:15:04 +00:00
LinuxServer-CI 10c80ab64e Bot Updating Templated Files 2020-12-16 01:36:05 +00:00
LinuxServer-CI 850793627a Bot Updating Templated Files 2020-12-16 01:34:25 +00:00
LinuxServer-CI 3bf0ef49f1 Bot Updating Package Versions 2020-12-11 00:02:53 -05:00
aptalcaandGitHub ba0559d527 Merge pull request #115 from linuxserver/nightly-wf
add trigger workflows
2020-11-29 16:24:00 -05:00
aptalca 9b155dd18a add trigger workflows 2020-11-29 16:08:07 -05:00
LinuxServer-CI 562ba7eedc Bot Updating Package Versions 2020-11-22 00:30:38 -05:00
LinuxServer-CI e0e2f7d0dc Bot Updating Package Versions 2020-11-15 06:29:09 +00:00
LinuxServer-CI ec9612149e Bot Updating Package Versions 2020-11-06 08:09:31 +00:00
LinuxServer-CI 01e8e0c34a Bot Updating Package Versions 2020-11-05 23:29:23 -05:00
LinuxServer-CI 920ba763f1 Bot Updating Package Versions 2020-11-02 10:04:12 -05:00
LinuxServer-CI 8f5f0c2482 Bot Updating Templated Files 2020-11-02 14:57:24 +00:00
thelamer 4f4ae14086 update baseimages 2020-11-02 06:56:01 -08:00
LinuxServer-CI f0193fd2bc Bot Updating Package Versions 2020-10-11 07:28:48 +00:00
LinuxServer-CI f829b39612 Bot Updating Templated Files 2020-10-03 22:27:29 -04:00
LinuxServer-CI c7d861aac4 Bot Updating Templated Files 2020-10-04 03:26:20 +01:00
aptalcaandGitHub 7865395fed Merge pull request #108 from linuxserver/readme-updates-nightly
Readme Updates nightly
2020-09-27 10:45:01 -04:00
Eric Nemchik 96578d19c3 Readme Updates 2020-09-27 09:13:50 -05:00
Eric NemchikandGitHub d8150a9f10 Merge pull request #105 from hotio/nightly
Merge Preview into Nightly, following the upstream changes
2020-09-27 08:21:11 -05:00
hotio 8fe4ce5012 Merge Preview into Nightly, following the upstream changes 2020-09-27 11:06:50 +02:00
LinuxServer-CI 887ac04154 Bot Updating Package Versions 2020-09-26 23:28:05 -04:00
LinuxServer-CI 8ce69a5d1d Bot Updating Package Versions 2020-09-11 15:53:15 +01:00
LinuxServer-CI a70f65e90f Bot Updating Package Versions 2020-09-04 14:58:55 +00:00
LinuxServer-CI c6d694921b Bot Updating Package Versions 2020-08-21 14:54:51 +00:00
LinuxServer-CI 07c389bb5a Bot Updating Templated Files 2020-08-21 14:52:08 +00:00
LinuxServer-CI cb7dd1cba5 Bot Updating Package Versions 2020-08-14 14:53:35 +00:00
LinuxServer-CI 6c71f0fb56 Bot Updating Package Versions 2020-08-07 15:06:38 +00:00
LinuxServer-CI 9767f9046d Bot Updating Templated Files 2020-08-07 10:52:53 -04:00
LinuxServer-CI 4afecf9d44 Bot Updating Templated Files 2020-08-07 14:51:49 +00:00
LinuxServer-CI 5d52be30be Bot Updating Templated Files 2020-07-25 19:44:05 -04:00
thelamer 5117b42b21 remove leftover params 2020-07-25 16:43:06 -07:00
thelamer 6b3578b999 use custom version command 2020-07-25 16:43:06 -07:00
thelamer a0ab197103 update url ingestion to use official radarr server 2020-07-25 16:43:06 -07:00
LinuxServer-CI 3d890e1d15 Bot Updating Package Versions 2020-07-24 10:53:35 -04:00
LinuxServer-CI d4c596e45b Bot Updating Package Versions 2020-07-17 14:53:29 +00:00
LinuxServer-CI ebfb4e7a72 Bot Updating Package Versions 2020-07-10 10:53:08 -04:00
LinuxServer-CI d20149309b Bot Updating Package Versions 2020-07-03 03:29:26 +00:00
LinuxServer-CI 2b305117fa Bot Updating Package Versions 2020-06-26 01:28:58 +00:00
LinuxServer-CI 7b73319645 Bot Updating Package Versions 2020-06-19 10:53:16 -04:00
LinuxServer-CI a01f4ac98e Bot Updating Package Versions 2020-06-12 10:53:03 -04:00
LinuxServer-CI 18e29460cf Bot Updating Package Versions 2020-06-05 10:54:33 -04:00
LinuxServer-CI a20998a9e2 Bot Updating Templated Files 2020-06-05 16:51:44 +02:00
LinuxServer-CI 1fc26e8fac Bot Updating Package Versions 2020-05-29 10:54:26 -04:00
LinuxServer-CI a8756368bb Bot Updating Templated Files 2020-05-29 14:52:12 +00:00
LinuxServer-CI 04ba0f9dc1 Bot Updating Package Versions 2020-05-22 14:53:26 +00:00
LinuxServer-CI e0b62c181b Bot Updating Package Versions 2020-05-15 14:55:10 +00:00
LinuxServer-CI 52383907b0 Bot Updating Package Versions 2020-05-01 14:54:43 +00:00
LinuxServer-CI 7b0a4f1460 Bot Updating Templated Files 2020-05-01 14:52:03 +00:00
LinuxServer-CI 1c9c839764 Bot Updating Package Versions 2020-04-24 14:59:15 +00:00
LinuxServer-CI 9e17fd8dbb Bot Updating Templated Files 2020-04-09 21:44:35 -04:00
aptalcaandGitHub d206b55599 Merge pull request #92 from linuxserver/nightly-app
Move app to /app
2020-04-09 21:43:37 -04:00
Eric Nemchik 1c28dcb854 Fix perms on /app 2020-04-08 16:39:29 -05:00
LinuxServer-CI 66390375c5 Bot Updating Package Versions 2020-04-08 15:55:10 -05:00
LinuxServer-CI d01e5cc33f Bot Updating Templated Files 2020-04-08 20:50:03 +00:00
LinuxServer-CI a175a663de Bot Updating Templated Files 2020-04-08 15:48:49 -05:00
aptalcaandGitHub e8a3687095 Merge pull request #96 from linuxserver/nemchik-patch-2
Add donate link
2020-04-08 16:47:41 -04:00
Eric NemchikandGitHub 0996e01afd Remove blank line 2020-04-07 19:30:11 -05:00
Eric NemchikandGitHub dc2eaeb950 Add donate link 2020-04-07 17:43:34 -05:00
Eric Nemchik 9a4ee6ae29 Move app to /app 2020-04-05 02:44:10 -05:00
LinuxServer-CI 93c521ad0e Bot Updating Package Versions 2020-03-27 15:55:51 +00:00
LinuxServer-CI eb40db12fa Bot Updating Package Versions 2020-03-20 11:55:03 -04:00
LinuxServer-CI a6ab0faeee Bot Updating Package Versions 2020-03-13 16:54:25 +01:00
LinuxServer-CI 4af2b824e3 Bot Updating Package Versions 2020-02-21 15:53:49 +00:00
LinuxServer-CI 4cd68c3af1 Bot Updating Package Versions 2020-02-14 10:58:44 -05:00
LinuxServer-CI 761ca70088 Bot Updating Package Versions 2020-02-07 15:55:51 +00:00
LinuxServer-CI b5429c4214 Bot Updating Package Versions 2020-01-31 01:28:14 +00:00
LinuxServer-CI e3d5aba2f6 Bot Updating Package Versions 2020-01-24 20:31:34 +00:00
LinuxServer-CI 3778fd4560 Bot Updating Package Versions 2020-01-17 15:54:10 +00:00
LinuxServer-CI 305f765910 Bot Updating Package Versions 2019-12-20 15:55:12 +00:00
LinuxServer-CI df0ed1a354 Bot Updating Package Versions 2019-12-06 16:54:00 +01:00
LinuxServer-CI a4c650e743 Bot Updating Templated Files 2019-11-29 15:51:47 +00:00
LinuxServer-CI cfb1a97331 Bot Updating Package Versions 2019-11-22 15:54:04 +00:00
LinuxServer-CI 4cac216d3f Bot Updating Package Versions 2019-11-15 16:55:00 +01:00
Jameel Al-AzizandRyan Kuba 59d71722a2 Remove extra volumes from the Dockerfile
Specifying the volumes in the Dockerfile is unnecessary and can lead to
excessive orphaned volume if the user chooses to use different paths at
runtime.
2019-11-02 20:28:19 -07:00
LinuxServer-CI a87d46e109 Bot Updating Package Versions 2019-11-01 11:55:39 -04:00
LinuxServer-CI ae5a74967b Bot Updating Templated Files 2019-11-01 15:51:42 +00:00
LinuxServer-CI f9b2fe4394 Bot Updating Package Versions 2019-10-25 15:53:58 +01:00
LinuxServer-CI 7f9ff3cb9c Bot Updating Package Versions 2019-10-18 16:57:14 +02:00
LinuxServer-CI c5e5d96454 Bot Updating Package Versions 2019-10-11 10:58:37 -04:00
LinuxServer-CI f6fc2388b4 Bot Updating Templated Files 2019-10-11 10:52:46 -04:00
LinuxServer-CI e005681700 Bot Updating Templated Files 2019-10-11 10:51:55 -04:00
LinuxServer-CI ea5941593e Bot Updating Package Versions 2019-10-04 15:53:58 +01:00
LinuxServer-CI 784584ca72 Bot Updating Package Versions 2019-09-27 15:54:59 +01:00
LinuxServer-CI 258bb8eaf4 Bot Updating Package Versions 2019-09-20 15:57:12 +01:00
LinuxServer-CI 17f54b7fbb Bot Updating Package Versions 2019-09-13 10:59:24 -04:00
LinuxServer-CI fe41d81cfa Bot Updating Package Versions 2019-09-06 10:33:19 -04:00
LinuxServer-CI c5f51669fe Bot Updating Templated Files 2019-09-01 17:27:05 +01:00
LinuxServer-CI 18819be44c Bot Updating Templated Files 2019-09-01 12:26:07 -04:00
LinuxServer-CI 9a972bed92 Bot Updating Package Versions 2019-08-23 10:56:12 -04:00
LinuxServer-CI e93dca1060 Bot Updating Package Versions 2019-08-14 20:40:05 -04:00
LinuxServer-CI ad97cf59c5 Bot Updating Package Versions 2019-08-09 15:58:11 +01:00
LinuxServer-CI 55fe13a669 Bot Updating Package Versions 2019-08-03 16:17:13 -04:00
aptalcaandGitHub 1721d2b9f8 Merge pull request #58 from thelamer/nightly
nightly - adding LTS branch for us to freeze a stable mono for downstream
2019-08-03 16:09:33 -04:00
LinuxServer-CI 4d04550700 Bot Updating Package Versions 2019-08-02 15:54:56 +01:00
thelamer 49e12f8e39 adding LTS branch for us to freeze a stable mono for downstream 2019-08-01 17:48:05 -07:00
LinuxServer-CI 12ed199768 Bot Updating Package Versions 2019-07-26 15:55:55 +01:00
LinuxServer-CI 607858218f Bot Updating Package Versions 2019-07-19 14:54:35 +00:00
LinuxServer-CI d9ebf0c1aa Bot Updating Package Versions 2019-07-10 09:27:23 +00:00
LinuxServer-CI 5d2bf82390 Bot Updating Package Versions 2019-07-05 16:54:46 +02:00
LinuxServer-CI 20edd5bf96 Bot Updating Templated Files 2019-07-05 16:52:04 +02:00
LinuxServer-CI 043fba52df Bot Updating Package Versions 2019-06-28 14:53:45 +00:00
LinuxServer-CI 5d82ae5dc7 Bot Updating Package Versions 2019-06-21 10:53:00 -04:00
Mateusz FurdynaandRyan Kuba c5b1a7fa19 Fix umask - get umask from environment
Makes it consistent with other linuxserver.io images.
2019-06-16 15:15:49 -07:00
LinuxServer-CI cc33298c07 Bot Updating Package Versions 2019-06-14 14:55:11 +00:00
LinuxServer-CI debb8e93c3 Bot Updating Templated Files 2019-06-07 15:51:46 +01:00
LinuxServer-CI 3c7c1396a0 Bot Updating Package Versions 2019-05-24 10:58:25 -04:00
LinuxServer-CI 888a890812 Bot Updating Templated Files 2019-05-24 10:53:48 -04:00
LinuxServer-CI 960b1cb86e Bot Updating Templated Files 2019-05-24 10:52:20 -04:00
LinuxServer-CI dd007fea97 Bot Updating Package Versions 2019-05-10 16:21:17 -04:00
chbmbandGitHub 713c07b940 Merge pull request #46 from thelamer/nightly
rebase to bionic
2019-05-10 21:18:39 +01:00
thelamer 5bec90ad8c rebase to bionic 2019-05-10 12:44:39 -07:00
LinuxServer-CI b7e2fc7c94 Bot Updating Templated Files 2019-05-03 14:51:48 +00:00
LinuxServer-CI c43853c59c Bot Updating Package Versions 2019-05-02 11:29:03 +00:00
LinuxServer-CI c57efee802 Bot Updating Templated Files 2019-05-02 11:26:10 +00:00
LinuxServer-CI 81188e7a5f Bot Updating Package Versions 2019-04-26 14:59:11 +00:00
LinuxServer-CI 2f3192be82 Bot Updating Package Versions 2019-04-19 16:15:49 +01:00
LinuxServer-CI 5df677945a Bot Updating Package Versions 2019-04-12 10:53:26 -04:00
LinuxServer-CI 458cf61903 Bot Updating Package Versions 2019-04-05 15:57:32 +01:00
LinuxServer-CI 7720298b16 Bot Updating Package Versions 2019-03-24 20:00:33 +00:00
aptalcaandGitHub ba8c87ac52 Merge pull request #41 from thelamer/nightly
Switching to new Base images, shift to arm32v7 tag.
2019-03-24 15:53:32 -04:00
thelamer 5deee328da Switching to new Base images, shift to arm32v7 tag. 2019-03-23 16:46:38 -07:00
LinuxServer-CI dbfc4e82e4 Bot Updating Package Versions 2019-03-22 15:53:29 +00:00
LinuxServer-CI 497ba114d3 Bot Updating Package Versions 2019-03-19 10:27:36 +00:00
LinuxServer-CI 73db3c615b Bot Updating Package Versions 2019-03-08 13:52:06 -05:00
LinuxServer-CI e47f12b6dd Bot Updating Templated Files 2019-03-08 15:51:31 +00:00
LinuxServer-CI 2858a95438 Bot Updating Templated Files 2019-03-01 15:51:38 +00:00
LinuxServer-CI f166e87bc5 Bot Updating Package Versions 2019-02-24 00:29:05 +00:00
LinuxServer-CI 2acc6f5529 Bot Updating Package Versions 2019-02-15 15:55:45 +00:00
LinuxServer-CI 84ffb4b63a Bot Updating Templated Files 2019-02-15 15:51:42 +00:00
LinuxServer-CI 8f4aede79c Bot Updating Templated Files 2019-02-08 15:51:44 +00:00
j0nnymoeandGitHub d7034dd900 Merge pull request #35 from linuxserver/nightly-version
fix radarr version arg, switch to https for download url
2019-01-30 21:32:50 +00:00
aptalca d06182a46e ignore curl cert errors until we figure out issue with builders 2019-01-30 16:21:19 -05:00
aptalca 9de23e5083 fix radarr version arg, switch to https for download url 2019-01-30 15:10:42 -05:00
LinuxServer-CI 9503c75d0e Bot Updating Package Versions 2019-01-30 19:54:55 +00:00
LinuxServer-CI 3e8a7b8ba0 Bot Updating Templated Files 2019-01-30 14:50:54 -05:00
aptalcaandGitHub 2159faca8c Merge pull request #33 from linuxserver/pipeline-nightly
Pipeline nightly
2019-01-30 14:50:02 -05:00
Ryan KubaandGitHub 7979057fb0 Merge branch 'nightly' into pipeline-nightly 2019-01-21 00:51:17 -08:00
thelamer e5c74cce45 updating branch with current pipeline build logic in prep for PR 2019-01-20 20:27:40 -08:00
thelamer 8bf4376134 bad json path for version endpoint 2018-09-09 22:15:57 -07:00
thelamer 295c24752e bad variable in credentials for live build server 2018-09-09 22:12:44 -07:00
thelamer a0d8b5b656 adding nightly branch to pipeline builds 2018-09-09 22:11:16 -07:00
sparklyballs 732f9294ed change baseimages to new ubuntu style 2018-03-14 18:44:09 +00:00
sparklyballsandGitHub 4d482fa103 Merge pull request #22 from linuxserver/develop
Develop
2018-02-24 18:15:04 +00:00
sparklyballs d62defbf12 add variable to choose branch 2018-02-24 17:57:45 +00:00
sparklyballs 0c406a6ed8 first push up of develop branch 2018-02-24 16:36:44 +00:00
38 changed files with 1227 additions and 685 deletions
Executable
+20
View File
@@ -0,0 +1,20 @@
# This file is globally distributed to all container image projects from
# https://github.com/linuxserver/docker-jenkins-builder/blob/master/.editorconfig
# top-most EditorConfig file
root = true
# Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
insert_final_newline = true
# trim_trailing_whitespace may cause unintended issues and should not be globally set true
trim_trailing_whitespace = false
[{Dockerfile*,**.yml}]
indent_style = space
indent_size = 2
[{**.sh,root/etc/s6-overlay/s6-rc.d/**,root/etc/cont-init.d/**,root/etc/services.d/**}]
indent_style = space
indent_size = 4
+3 -3
View File
@@ -4,7 +4,7 @@
* While contributing make sure to make all your changes before creating a Pull Request, as our pipeline builds each commit after the PR is open.
* Read, and fill the Pull Request template
* If this is a fix for a typo in code or documentation in the README please file an issue
* If this is a fix for a typo (in code, documentation, or the README) please file an issue and let us sort it out. We do not need a PR
* If the PR is addressing an existing issue include, closes #\<issue number>, in the body of the PR commit message
* If you want to discuss changes, you can also bring it up in [#dev-talk](https://discordapp.com/channels/354974912613449730/757585807061155840) in our [Discord server](https://discord.gg/YWrKVTn)
@@ -24,7 +24,7 @@
## Readme
If you would like to change our readme, please __**do not**__ directly edit the readme, as it is auto-generated on each commit.
Instead edit the [readme-vars.yml](https://github.com/linuxserver/docker-radarr/edit/develop/readme-vars.yml).
Instead edit the [readme-vars.yml](https://github.com/linuxserver/docker-radarr/edit/nightly/readme-vars.yml).
These variables are used in a template for our [Jenkins Builder](https://github.com/linuxserver/docker-jenkins-builder) as part of an ansible play.
Most of these variables are also carried over to [docs.linuxserver.io](https://docs.linuxserver.io/images/docker-radarr)
@@ -115,7 +115,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Update the changelog
If you are modifying the Dockerfiles or any of the startup scripts in [root](https://github.com/linuxserver/docker-radarr/tree/develop/root), add an entry to the changelog
If you are modifying the Dockerfiles or any of the startup scripts in [root](https://github.com/linuxserver/docker-radarr/tree/nightly/root), add an entry to the changelog
```yml
changelogs:
-40
View File
@@ -1,40 +0,0 @@
---
name: Bug report
about: Create a report to help us improve
---
[linuxserverurl]: https://linuxserver.io
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl]
<!--- If you are new to Docker or this application our issue tracker is **ONLY** used for reporting bugs or requesting features. Please use [our discord server](https://discord.gg/YWrKVTn) for general support. --->
<!--- Provide a general summary of the bug in the Title above -->
------------------------------
## Expected Behavior
<!--- Tell us what should happen -->
## Current Behavior
<!--- Tell us what happens instead of the expected behavior -->
## Steps to Reproduce
<!--- Provide a link to a live example, or an unambiguous set of steps to -->
<!--- reproduce this bug. Include code to reproduce, if relevant -->
1.
2.
3.
4.
## Environment
**OS:**
**CPU architecture:** x86_64/arm32/arm64
**How docker service was installed:**
<!--- ie. from the official docker repo, from the distro repo, nas OS provided, etc. -->
<!--- Providing context helps us come up with a solution that is most useful in the real world -->
## Command used to create docker container (run/create/compose/screenshot)
<!--- Provide your docker create/run command or compose yaml snippet, or a screenshot of settings if using a gui to create the container -->
## Docker logs
<!--- Provide a full docker log, output of "docker logs radarr" -->
+76
View File
@@ -0,0 +1,76 @@
# Based on the issue template
name: Bug report
description: Create a report to help us improve
title: "[BUG] <title>"
labels: [Bug]
body:
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: I have searched the existing issues
required: true
- type: textarea
attributes:
label: Current Behavior
description: Tell us what happens instead of the expected behavior.
validations:
required: true
- type: textarea
attributes:
label: Expected Behavior
description: Tell us what should happen.
validations:
required: false
- type: textarea
attributes:
label: Steps To Reproduce
description: Steps to reproduce the behavior.
placeholder: |
1. In this environment...
2. With this config...
3. Run '...'
4. See error...
validations:
required: true
- type: textarea
attributes:
label: Environment
description: |
examples:
- **OS**: Ubuntu 20.04
- **How docker service was installed**: distro's packagemanager
value: |
- OS:
- How docker service was installed:
render: markdown
validations:
required: false
- type: dropdown
attributes:
label: CPU architecture
options:
- x86-64
- arm64
validations:
required: true
- type: textarea
attributes:
label: Docker creation
description: |
Command used to create docker container
Provide your docker create/run command or compose yaml snippet, or a screenshot of settings if using a gui to create the container
render: bash
validations:
required: true
- type: textarea
attributes:
description: |
Provide a full docker log, output of "docker logs linuxserver.io"
label: Container logs
placeholder: |
Output of `docker logs linuxserver.io`
render: bash
validations:
required: true
-25
View File
@@ -1,25 +0,0 @@
---
name: Feature request
about: Suggest an idea for this project
---
[linuxserverurl]: https://linuxserver.io
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)][linuxserverurl]
<!--- If you are new to Docker or this application our issue tracker is **ONLY** used for reporting bugs or requesting features. Please use [our discord server](https://discord.gg/YWrKVTn) for general support. --->
<!--- If this acts as a feature request please ask yourself if this modification is something the whole userbase will benefit from --->
<!--- If this is a specific change for corner case functionality or plugins please look at making a Docker Mod or local script https://blog.linuxserver.io/2019/09/14/customizing-our-containers/ -->
<!--- Provide a general summary of the request in the Title above -->
------------------------------
## Desired Behavior
<!--- Tell us what should happen -->
## Current Behavior
<!--- Tell us what happens instead of the expected behavior -->
## Alternatives Considered
<!--- Tell us what other options you have tried or considered -->
+31
View File
@@ -0,0 +1,31 @@
# Based on the issue template
name: Feature request
description: Suggest an idea for this project
title: "[FEAT] <title>"
labels: [enhancement]
body:
- type: checkboxes
attributes:
label: Is this a new feature request?
description: Please search to see if a feature request already exists.
options:
- label: I have searched the existing issues
required: true
- type: textarea
attributes:
label: Wanted change
description: Tell us what you want to happen.
validations:
required: true
- type: textarea
attributes:
label: Reason for change
description: Justify your request, why do you want it, what is the benefit.
validations:
required: true
- type: textarea
attributes:
label: Proposed code change
description: Do you have a potential code change in mind?
validations:
required: false
+2 -2
View File
@@ -6,7 +6,7 @@
<!--- Before submitting a pull request please check the following -->
<!--- If this is a fix for a typo in code or documentation in the README please file an issue and let us sort it out we do not need a PR -->
<!--- If this is a fix for a typo (in code, documentation, or the README) please file an issue and let us sort it out. We do not need a PR -->
<!--- Ask yourself if this modification is something the whole userbase will benefit from, if this is a specific change for corner case functionality or plugins please look at making a Docker Mod or local script https://blog.linuxserver.io/2019/09/14/customizing-our-containers/ -->
<!--- That if the PR is addressing an existing issue include, closes #<issue number> , in the body of the PR commit message -->
<!--- You have included links to any files / patches etc your PR may be using in the body of the PR commit message -->
@@ -21,7 +21,7 @@
------------------------------
- [ ] I have read the [contributing](https://github.com/linuxserver/docker-radarr/blob/develop/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications
- [ ] I have read the [contributing](https://github.com/linuxserver/docker-radarr/blob/nightly/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications
------------------------------
+16
View File
@@ -0,0 +1,16 @@
name: Issue & PR Tracker
on:
issues:
types: [opened,reopened,labeled,unlabeled,closed]
pull_request_target:
types: [opened,reopened,review_requested,review_request_removed,labeled,unlabeled,closed]
pull_request_review:
types: [submitted,edited,dismissed]
jobs:
manage-project:
permissions:
issues: write
uses: linuxserver/github-workflows/.github/workflows/issue-pr-tracker.yml@v1
secrets: inherit
+13
View File
@@ -0,0 +1,13 @@
name: Mark stale issues and pull requests
on:
schedule:
- cron: '58 22 * * *'
workflow_dispatch:
jobs:
stale:
permissions:
issues: write
pull-requests: write
uses: linuxserver/github-workflows/.github/workflows/issues-cron.yml@v1
secrets: inherit
+27 -15
View File
@@ -4,24 +4,26 @@ on:
workflow_dispatch:
jobs:
external-trigger-develop:
external-trigger-nightly:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- uses: actions/checkout@v3.1.0
- name: External Trigger
if: github.ref == 'refs/heads/develop'
if: github.ref == 'refs/heads/nightly'
run: |
if [ -n "${{ secrets.PAUSE_EXTERNAL_TRIGGER_RADARR_DEVELOP }}" ]; then
echo "**** Github secret PAUSE_EXTERNAL_TRIGGER_RADARR_DEVELOP is set; skipping trigger. ****"
if [ -n "${{ secrets.PAUSE_EXTERNAL_TRIGGER_RADARR_NIGHTLY }}" ]; then
echo "**** Github secret PAUSE_EXTERNAL_TRIGGER_RADARR_NIGHTLY is set; skipping trigger. ****"
echo "Github secret \`PAUSE_EXTERNAL_TRIGGER_RADARR_NIGHTLY\` is set; skipping trigger." >> $GITHUB_STEP_SUMMARY
exit 0
fi
echo "**** External trigger running off of develop branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_RADARR_DEVELOP\". ****"
echo "**** External trigger running off of nightly branch. To disable this trigger, set a Github secret named \"PAUSE_EXTERNAL_TRIGGER_RADARR_NIGHTLY\". ****"
echo "External trigger running off of nightly branch. To disable this trigger, set a Github secret named \`PAUSE_EXTERNAL_TRIGGER_RADARR_NIGHTLY\`" >> $GITHUB_STEP_SUMMARY
echo "**** Retrieving external version ****"
EXT_RELEASE=$(curl -sL https://radarr.servarr.com/v1/update/develop/changes?os=linux | jq -r '.[0].version')
EXT_RELEASE=$(curl -sL https://radarr.servarr.com/v1/update/nightly/changes?runtime=netcore%26os=linux | jq -r '.[0].version')
if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then
echo "**** Can't retrieve external version, exiting ****"
FAILURE_REASON="Can't retrieve external version for radarr branch develop"
FAILURE_REASON="Can't retrieve external version for radarr branch nightly"
GHA_TRIGGER_URL="https://github.com/linuxserver/docker-radarr/actions/runs/${{ github.run_id }}"
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 16711680,
"description": "**Trigger Failed** \n**Reason:** '"${FAILURE_REASON}"' \n**Trigger URL:** '"${GHA_TRIGGER_URL}"' \n"}],
@@ -30,9 +32,10 @@ jobs:
fi
EXT_RELEASE=$(echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g')
echo "**** External version: ${EXT_RELEASE} ****"
echo "External version: ${EXT_RELEASE}" >> $GITHUB_STEP_SUMMARY
echo "**** Retrieving last pushed version ****"
image="linuxserver/radarr"
tag="develop"
tag="nightly"
token=$(curl -sX GET \
"https://ghcr.io/token?scope=repository%3Alinuxserver%2Fradarr%3Apull" \
| jq -r '.token')
@@ -48,29 +51,37 @@ jobs:
| jq -r '.config.digest')
image_info=$(curl -sL \
--header "Authorization: Bearer ${token}" \
"https://ghcr.io/v2/${image}/blobs/${digest}" \
| jq -r '.container_config')
"https://ghcr.io/v2/${image}/blobs/${digest}")
if [[ $(echo $image_info | jq -r '.container_config') == "null" ]]; then
image_info=$(echo $image_info | jq -r '.config')
else
image_info=$(echo $image_info | jq -r '.container_config')
fi
IMAGE_RELEASE=$(echo ${image_info} | jq -r '.Labels.build_version' | awk '{print $3}')
IMAGE_VERSION=$(echo ${IMAGE_RELEASE} | awk -F'-ls' '{print $1}')
if [ -z "${IMAGE_VERSION}" ]; then
echo "**** Can't retrieve last pushed version, exiting ****"
FAILURE_REASON="Can't retrieve last pushed version for radarr tag develop"
FAILURE_REASON="Can't retrieve last pushed version for radarr tag nightly"
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 16711680,
"description": "**Trigger Failed** \n**Reason:** '"${FAILURE_REASON}"' \n"}],
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
exit 1
fi
echo "**** Last pushed version: ${IMAGE_VERSION} ****"
echo "Last pushed version: ${IMAGE_VERSION}" >> $GITHUB_STEP_SUMMARY
if [ "${EXT_RELEASE}" == "${IMAGE_VERSION}" ]; then
echo "**** Version ${EXT_RELEASE} already pushed, exiting ****"
echo "Version ${EXT_RELEASE} already pushed, exiting" >> $GITHUB_STEP_SUMMARY
exit 0
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/lastBuild/api/json | jq -r '.building') == "true" ]; then
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/nightly/lastBuild/api/json | jq -r '.building') == "true" ]; then
echo "**** New version ${EXT_RELEASE} found; but there already seems to be an active build on Jenkins; exiting ****"
echo "New version ${EXT_RELEASE} found; but there already seems to be an active build on Jenkins; exiting" >> $GITHUB_STEP_SUMMARY
exit 0
else
echo "**** New version ${EXT_RELEASE} found; old version was ${IMAGE_VERSION}. Triggering new build ****"
echo "New version ${EXT_RELEASE} found; old version was ${IMAGE_VERSION}. Triggering new build" >> $GITHUB_STEP_SUMMARY
response=$(curl -iX POST \
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/buildWithParameters?PACKAGE_CHECK=false \
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/nightly/buildWithParameters?PACKAGE_CHECK=false \
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} | grep -i location | sed "s|^[L|l]ocation: \(.*\)|\1|")
echo "**** Jenkins job queue url: ${response%$'\r'} ****"
echo "**** Sleeping 10 seconds until job starts ****"
@@ -78,6 +89,7 @@ jobs:
buildurl=$(curl -s "${response%$'\r'}api/json" | jq -r '.executable.url')
buildurl="${buildurl%$'\r'}"
echo "**** Jenkins job build url: ${buildurl} ****"
echo "Jenkins job build url: ${buildurl}" >> $GITHUB_STEP_SUMMARY
echo "**** Attempting to change the Jenkins job description ****"
curl -iX POST \
"${buildurl}submitDescription" \
@@ -85,7 +97,7 @@ jobs:
--data-urlencode "description=GHA external trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
--data-urlencode "Submit=Submit"
echo "**** Notifying Discord ****"
TRIGGER_REASON="A version change was detected for radarr tag develop. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE}"
TRIGGER_REASON="A version change was detected for radarr tag nightly. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE}"
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 9802903,
"description": "**Build Triggered** \n**Reason:** '"${TRIGGER_REASON}"' \n**Build URL:** '"${buildurl}display/redirect"' \n"}],
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
@@ -2,14 +2,14 @@ name: External Trigger Scheduler
on:
schedule:
- cron: '51 * * * *'
- cron: '25 * * * *'
workflow_dispatch:
jobs:
external-trigger-scheduler:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- uses: actions/checkout@v3.1.0
with:
fetch-depth: '0'
@@ -17,18 +17,18 @@ jobs:
run: |
echo "**** Branches found: ****"
git for-each-ref --format='%(refname:short)' refs/remotes
echo "**** Pulling the yq docker image ****"
docker pull ghcr.io/linuxserver/yq
for br in $(git for-each-ref --format='%(refname:short)' refs/remotes)
do
br=$(echo "$br" | sed 's|origin/||g')
echo "**** Evaluating branch ${br} ****"
ls_branch=$(curl -sX GET https://raw.githubusercontent.com/linuxserver/docker-radarr/${br}/jenkins-vars.yml \
| docker run --rm -i --entrypoint yq ghcr.io/linuxserver/yq -r .ls_branch)
if [ "$br" == "$ls_branch" ]; then
echo "**** Branch ${br} appears to be live; checking workflow. ****"
ls_jenkins_vars=$(curl -sX GET https://raw.githubusercontent.com/linuxserver/docker-radarr/${br}/jenkins-vars.yml)
ls_branch=$(echo "${ls_jenkins_vars}" | yq -r '.ls_branch')
ls_trigger=$(echo "${ls_jenkins_vars}" | yq -r '.external_type')
if [[ "${br}" == "${ls_branch}" ]] && [[ "${ls_trigger}" != "os" ]]; then
echo "**** Branch ${br} appears to be live and trigger is not os; checking workflow. ****"
if curl -sfX GET https://raw.githubusercontent.com/linuxserver/docker-radarr/${br}/.github/workflows/external_trigger.yml > /dev/null 2>&1; then
echo "**** Workflow exists. Triggering external trigger workflow for branch ${br} ****."
echo "Triggering external trigger workflow for branch ${br}" >> $GITHUB_STEP_SUMMARY
curl -iX POST \
-H "Authorization: token ${{ secrets.CR_PAT }}" \
-H "Accept: application/vnd.github.v3+json" \
@@ -36,8 +36,10 @@ jobs:
https://api.github.com/repos/linuxserver/docker-radarr/actions/workflows/external_trigger.yml/dispatches
else
echo "**** Workflow doesn't exist; skipping trigger. ****"
echo "Skipping branch ${br} due to no external trigger workflow present." >> $GITHUB_STEP_SUMMARY
fi
else
echo "**** ${br} appears to be a dev branch; skipping trigger. ****"
echo "**** ${br} is either a dev branch, or has no external version; skipping trigger. ****"
echo "Skipping branch ${br} due to being detected as dev branch or having no external version." >> $GITHUB_STEP_SUMMARY
fi
done
+2 -2
View File
@@ -8,6 +8,6 @@ jobs:
steps:
- uses: actions/first-interaction@v1
with:
issue-message: 'Thanks for opening your first issue here! Be sure to follow the [bug](https://github.com/linuxserver/docker-radarr/blob/develop/.github/ISSUE_TEMPLATE/issue.bug.md) or [feature](https://github.com/linuxserver/docker-radarr/blob/develop/.github/ISSUE_TEMPLATE/issue.feature.md) issue templates!'
pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-radarr/blob/develop/.github/PULL_REQUEST_TEMPLATE.md)!'
issue-message: 'Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.'
pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-radarr/blob/nightly/.github/PULL_REQUEST_TEMPLATE.md)!'
repo-token: ${{ secrets.GITHUB_TOKEN }}
+12 -8
View File
@@ -4,25 +4,28 @@ on:
workflow_dispatch:
jobs:
package-trigger-develop:
package-trigger-nightly:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- uses: actions/checkout@v3.1.0
- name: Package Trigger
if: github.ref == 'refs/heads/develop'
if: github.ref == 'refs/heads/nightly'
run: |
if [ -n "${{ secrets.PAUSE_PACKAGE_TRIGGER_RADARR_DEVELOP }}" ]; then
echo "**** Github secret PAUSE_PACKAGE_TRIGGER_RADARR_DEVELOP is set; skipping trigger. ****"
if [ -n "${{ secrets.PAUSE_PACKAGE_TRIGGER_RADARR_NIGHTLY }}" ]; then
echo "**** Github secret PAUSE_PACKAGE_TRIGGER_RADARR_NIGHTLY is set; skipping trigger. ****"
echo "Github secret \`PAUSE_PACKAGE_TRIGGER_RADARR_NIGHTLY\` is set; skipping trigger." >> $GITHUB_STEP_SUMMARY
exit 0
fi
if [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/lastBuild/api/json | jq -r '.building') == "true" ]; then
if [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/nightly/lastBuild/api/json | jq -r '.building') == "true" ]; then
echo "**** There already seems to be an active build on Jenkins; skipping package trigger ****"
echo "There already seems to be an active build on Jenkins; skipping package trigger" >> $GITHUB_STEP_SUMMARY
exit 0
fi
echo "**** Package trigger running off of develop branch. To disable, set a Github secret named \"PAUSE_PACKAGE_TRIGGER_RADARR_DEVELOP\". ****"
echo "**** Package trigger running off of nightly branch. To disable, set a Github secret named \"PAUSE_PACKAGE_TRIGGER_RADARR_NIGHTLY\". ****"
echo "Package trigger running off of nightly branch. To disable, set a Github secret named \`PAUSE_PACKAGE_TRIGGER_RADARR_NIGHTLY\`" >> $GITHUB_STEP_SUMMARY
response=$(curl -iX POST \
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/buildWithParameters?PACKAGE_CHECK=true \
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/nightly/buildWithParameters?PACKAGE_CHECK=true \
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} | grep -i location | sed "s|^[L|l]ocation: \(.*\)|\1|")
echo "**** Jenkins job queue url: ${response%$'\r'} ****"
echo "**** Sleeping 10 seconds until job starts ****"
@@ -30,6 +33,7 @@ jobs:
buildurl=$(curl -s "${response%$'\r'}api/json" | jq -r '.executable.url')
buildurl="${buildurl%$'\r'}"
echo "**** Jenkins job build url: ${buildurl} ****"
echo "Jenkins job build url: ${buildurl}" >> $GITHUB_STEP_SUMMARY
echo "**** Attempting to change the Jenkins job description ****"
curl -iX POST \
"${buildurl}submitDescription" \
@@ -2,14 +2,14 @@ name: Package Trigger Scheduler
on:
schedule:
- cron: '53 15 * * 1'
- cron: '49 16 * * 0'
workflow_dispatch:
jobs:
package-trigger-scheduler:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2.3.3
- uses: actions/checkout@v3.1.0
with:
fetch-depth: '0'
@@ -17,18 +17,16 @@ jobs:
run: |
echo "**** Branches found: ****"
git for-each-ref --format='%(refname:short)' refs/remotes
echo "**** Pulling the yq docker image ****"
docker pull ghcr.io/linuxserver/yq
for br in $(git for-each-ref --format='%(refname:short)' refs/remotes)
do
br=$(echo "$br" | sed 's|origin/||g')
echo "**** Evaluating branch ${br} ****"
ls_branch=$(curl -sX GET https://raw.githubusercontent.com/linuxserver/docker-radarr/${br}/jenkins-vars.yml \
| docker run --rm -i --entrypoint yq ghcr.io/linuxserver/yq -r .ls_branch)
ls_branch=$(curl -sX GET https://raw.githubusercontent.com/linuxserver/docker-radarr/${br}/jenkins-vars.yml | yq -r '.ls_branch')
if [ "${br}" == "${ls_branch}" ]; then
echo "**** Branch ${br} appears to be live; checking workflow. ****"
if curl -sfX GET https://raw.githubusercontent.com/linuxserver/docker-radarr/${br}/.github/workflows/package_trigger.yml > /dev/null 2>&1; then
echo "**** Workflow exists. Triggering package trigger workflow for branch ${br}. ****"
echo "Triggering package trigger workflow for branch ${br}" >> $GITHUB_STEP_SUMMARY
triggered_branches="${triggered_branches}${br} "
curl -iX POST \
-H "Authorization: token ${{ secrets.CR_PAT }}" \
@@ -38,9 +36,11 @@ jobs:
sleep 30
else
echo "**** Workflow doesn't exist; skipping trigger. ****"
echo "Skipping branch ${br} due to no package trigger workflow present." >> $GITHUB_STEP_SUMMARY
fi
else
echo "**** ${br} appears to be a dev branch; skipping trigger. ****"
echo "Skipping branch ${br} due to being detected as dev branch." >> $GITHUB_STEP_SUMMARY
fi
done
echo "**** Package check build(s) triggered for branch(es): ${triggered_branches} ****"
+10
View File
@@ -0,0 +1,10 @@
name: Permission check
on:
pull_request_target:
paths:
- '**/run'
- '**/finish'
- '**/check'
jobs:
permission_check:
uses: linuxserver/github-workflows/.github/workflows/init-svc-executable-permissions.yml@v1
-23
View File
@@ -1,23 +0,0 @@
name: Mark stale issues and pull requests
on:
schedule:
- cron: "30 1 * * *"
jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v1
with:
stale-issue-message: "This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions."
stale-pr-message: "This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions."
stale-issue-label: 'no-issue-activity'
stale-pr-label: 'no-pr-activity'
days-before-stale: 30
days-before-close: 365
exempt-issue-labels: 'awaiting-approval,work-in-progress'
exempt-pr-labels: 'awaiting-approval,work-in-progress'
repo-token: ${{ secrets.GITHUB_TOKEN }}
+28 -30
View File
@@ -1,48 +1,46 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:focal
# syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-alpine:3.18
# set version label
ARG BUILD_DATE
ARG VERSION
ARG RADARR_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="thelamer"
LABEL maintainer="thespad"
# environment settings
ARG DEBIAN_FRONTEND="noninteractive"
ARG RADARR_BRANCH="develop"
ARG RADARR_BRANCH="nightly"
ENV XDG_CONFIG_HOME="/config/xdg"
RUN \
echo "**** install packages ****" && \
apt-get update && \
apt-get install --no-install-recommends -y \
jq \
libicu66 \
libmediainfo0v5 \
sqlite3 && \
echo "**** install radarr ****" && \
mkdir -p /app/radarr/bin && \
if [ -z ${RADARR_RELEASE+x} ]; then \
RADARR_RELEASE=$(curl -sL "https://radarr.servarr.com/v1/update/${RADARR_BRANCH}/changes?os=linux" \
| jq -r '.[0].version'); \
fi && \
curl -o \
/tmp/radarr.tar.gz -L \
"https://radarr.servarr.com/v1/update/${RADARR_BRANCH}/updatefile?version=${RADARR_RELEASE}&os=linux&runtime=netcore&arch=x64" && \
tar ixzf \
/tmp/radarr.tar.gz -C \
/app/radarr/bin --strip-components=1 && \
echo "UpdateMethod=docker\nBranch=${RADARR_BRANCH}\nPackageVersion=${VERSION}\nPackageAuthor=linuxserver.io" > /app/radarr/package_info && \
echo "**** cleanup ****" && \
rm -rf \
/app/radarr/bin/Radarr.Update \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
echo "**** install packages ****" && \
apk add -U --upgrade --no-cache \
icu-libs \
sqlite-libs \
xmlstarlet && \
echo "**** install radarr ****" && \
mkdir -p /app/radarr/bin && \
if [ -z ${RADARR_RELEASE+x} ]; then \
RADARR_RELEASE=$(curl -sL "https://radarr.servarr.com/v1/update/${RADARR_BRANCH}/changes?runtime=netcore&os=linuxmusl" \
| jq -r '.[0].version'); \
fi && \
curl -o \
/tmp/radarr.tar.gz -L \
"https://radarr.servarr.com/v1/update/${RADARR_BRANCH}/updatefile?version=${RADARR_RELEASE}&os=linuxmusl&runtime=netcore&arch=x64" && \
tar xzf \
/tmp/radarr.tar.gz -C \
/app/radarr/bin --strip-components=1 && \
echo -e "UpdateMethod=docker\nBranch=${RADARR_BRANCH}\nPackageVersion=${VERSION}\nPackageAuthor=[linuxserver.io](https://www.linuxserver.io/)" > /app/radarr/package_info && \
echo "**** cleanup ****" && \
rm -rf \
/app/radarr/bin/Radarr.Update \
/tmp/*
# copy local files
COPY root/ /
# ports and volumes
EXPOSE 7878
VOLUME /config
+28 -30
View File
@@ -1,48 +1,46 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-focal
# syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.18
# set version label
ARG BUILD_DATE
ARG VERSION
ARG RADARR_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="thelamer"
LABEL maintainer="thespad"
# environment settings
ARG DEBIAN_FRONTEND="noninteractive"
ARG RADARR_BRANCH="develop"
ARG RADARR_BRANCH="nightly"
ENV XDG_CONFIG_HOME="/config/xdg"
RUN \
echo "**** install packages ****" && \
apt-get update && \
apt-get install --no-install-recommends -y \
jq \
libicu66 \
libmediainfo0v5 \
sqlite3 && \
echo "**** install radarr ****" && \
mkdir -p /app/radarr/bin && \
if [ -z ${RADARR_RELEASE+x} ]; then \
RADARR_RELEASE=$(curl -sL "https://radarr.servarr.com/v1/update/${RADARR_BRANCH}/changes?os=linux" \
| jq -r '.[0].version'); \
fi && \
curl -o \
/tmp/radarr.tar.gz -L \
"https://radarr.servarr.com/v1/update/${RADARR_BRANCH}/updatefile?version=${RADARR_RELEASE}&os=linux&runtime=netcore&arch=arm64" && \
tar ixzf \
/tmp/radarr.tar.gz -C \
/app/radarr/bin --strip-components=1 && \
echo "UpdateMethod=docker\nBranch=${RADARR_BRANCH}\nPackageVersion=${VERSION}\nPackageAuthor=linuxserver.io" > /app/radarr/package_info && \
echo "**** cleanup ****" && \
rm -rf \
/app/radarr/bin/Radarr.Update \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
echo "**** install packages ****" && \
apk add -U --upgrade --no-cache \
icu-libs \
sqlite-libs \
xmlstarlet && \
echo "**** install radarr ****" && \
mkdir -p /app/radarr/bin && \
if [ -z ${RADARR_RELEASE+x} ]; then \
RADARR_RELEASE=$(curl -sL "https://radarr.servarr.com/v1/update/${RADARR_BRANCH}/changes?runtime=netcore&os=linuxmusl" \
| jq -r '.[0].version'); \
fi && \
curl -o \
/tmp/radarr.tar.gz -L \
"https://radarr.servarr.com/v1/update/${RADARR_BRANCH}/updatefile?version=${RADARR_RELEASE}&os=linuxmusl&runtime=netcore&arch=arm64" && \
tar xzf \
/tmp/radarr.tar.gz -C \
/app/radarr/bin --strip-components=1 && \
echo -e "UpdateMethod=docker\nBranch=${RADARR_BRANCH}\nPackageVersion=${VERSION}\nPackageAuthor=[linuxserver.io](https://www.linuxserver.io/)" > /app/radarr/package_info && \
echo "**** cleanup ****" && \
rm -rf \
/app/radarr/bin/Radarr.Update \
/tmp/*
# copy local files
COPY root/ /
# ports and volumes
EXPOSE 7878
VOLUME /config
-48
View File
@@ -1,48 +0,0 @@
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm32v7-focal
# set version label
ARG BUILD_DATE
ARG VERSION
ARG RADARR_RELEASE
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
LABEL maintainer="thelamer"
# environment settings
ARG DEBIAN_FRONTEND="noninteractive"
ARG RADARR_BRANCH="develop"
ENV XDG_CONFIG_HOME="/config/xdg"
RUN \
echo "**** install packages ****" && \
apt-get update && \
apt-get install --no-install-recommends -y \
jq \
libicu66 \
libmediainfo0v5 \
sqlite3 && \
echo "**** install radarr ****" && \
mkdir -p /app/radarr/bin && \
if [ -z ${RADARR_RELEASE+x} ]; then \
RADARR_RELEASE=$(curl -sL "https://radarr.servarr.com/v1/update/${RADARR_BRANCH}/changes?os=linux" \
| jq -r '.[0].version'); \
fi && \
curl -o \
/tmp/radarr.tar.gz -L \
"https://radarr.servarr.com/v1/update/${RADARR_BRANCH}/updatefile?version=${RADARR_RELEASE}&os=linux&runtime=netcore&arch=arm" && \
tar ixzf \
/tmp/radarr.tar.gz -C \
/app/radarr/bin --strip-components=1 && \
echo "**** cleanup ****" && \
echo "UpdateMethod=docker\nBranch=${RADARR_BRANCH}\nPackageVersion=${VERSION}\nPackageAuthor=linuxserver.io" > /app/radarr/package_info && \
rm -rf \
/app/radarr/bin/Radarr.Update \
/tmp/* \
/var/lib/apt/lists/* \
/var/tmp/*
# copy local files
COPY root/ /
# ports and volumes
EXPOSE 7878
VOLUME /config
Vendored
+321 -193
View File
@@ -23,25 +23,31 @@ pipeline {
DOCKERHUB_IMAGE = 'linuxserver/radarr'
DEV_DOCKERHUB_IMAGE = 'lsiodev/radarr'
PR_DOCKERHUB_IMAGE = 'lspipepr/radarr'
DIST_IMAGE = 'ubuntu'
DIST_IMAGE = 'alpine'
MULTIARCH='true'
CI='true'
CI_WEB='true'
CI_PORT='7878'
CI_SSL='false'
CI_DELAY='120'
CI_DOCKERENV='TZ=US/Pacific'
CI_DOCKERENV='TZ=Europe/London'
CI_AUTH='user:password'
CI_WEBPATH=''
CI_WEBPATH='/system/status'
}
stages {
// Setup all the basic environment variables needed for the build
stage("Set ENV Variables base"){
steps{
sh '''#! /bin/bash
containers=$(docker ps -aq)
if [[ -n "${containers}" ]]; then
docker stop ${containers}
fi
docker system prune -af --volumes || : '''
script{
env.EXIT_STATUS = ''
env.LS_RELEASE = sh(
script: '''docker run --rm ghcr.io/linuxserver/alexeiled-skopeo sh -c 'skopeo inspect docker://docker.io/'${DOCKERHUB_IMAGE}':develop 2>/dev/null' | jq -r '.Labels.build_version' | awk '{print $3}' | grep '\\-ls' || : ''',
script: '''docker run --rm quay.io/skopeo/stable:v1 inspect docker://ghcr.io/${LS_USER}/${CONTAINER_NAME}:nightly 2>/dev/null | jq -r '.Labels.build_version' | awk '{print $3}' | grep '\\-ls' || : ''',
returnStdout: true).trim()
env.LS_RELEASE_NOTES = sh(
script: '''cat readme-vars.yml | awk -F \\" '/date: "[0-9][0-9].[0-9][0-9].[0-9][0-9]:/ {print $4;exit;}' | sed -E ':a;N;$!ba;s/\\r{0,1}\\n/\\\\n/g' ''',
@@ -55,7 +61,7 @@ pipeline {
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/commit/' + env.GIT_COMMIT
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DOCKERHUB_IMAGE + '/tags/'
env.PULL_REQUEST = env.CHANGE_ID
env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.md ./.github/ISSUE_TEMPLATE/issue.feature.md ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/stale.yml ./.github/workflows/external_trigger.yml ./.github/workflows/package_trigger.yml ./root/donate.txt'
env.TEMPLATED_FILES = 'Jenkinsfile README.md LICENSE .editorconfig ./.github/CONTRIBUTING.md ./.github/FUNDING.yml ./.github/ISSUE_TEMPLATE/config.yml ./.github/ISSUE_TEMPLATE/issue.bug.yml ./.github/ISSUE_TEMPLATE/issue.feature.yml ./.github/PULL_REQUEST_TEMPLATE.md ./.github/workflows/external_trigger_scheduler.yml ./.github/workflows/greetings.yml ./.github/workflows/package_trigger_scheduler.yml ./.github/workflows/call_issue_pr_tracker.yml ./.github/workflows/call_issues_cron.yml ./.github/workflows/permissions.yml ./.github/workflows/external_trigger.yml ./.github/workflows/package_trigger.yml ./root/donate.txt'
}
script{
env.LS_RELEASE_NUMBER = sh(
@@ -65,7 +71,7 @@ pipeline {
script{
env.LS_TAG_NUMBER = sh(
script: '''#! /bin/bash
tagsha=$(git rev-list -n 1 ${LS_RELEASE} 2>/dev/null)
tagsha=$(git rev-list -n 1 nightly-${LS_RELEASE} 2>/dev/null)
if [ "${tagsha}" == "${COMMIT_SHA}" ]; then
echo ${LS_RELEASE_NUMBER}
elif [ -z "${GIT_COMMIT}" ]; then
@@ -103,7 +109,7 @@ pipeline {
steps{
script{
env.EXT_RELEASE = sh(
script: ''' curl -sL https://radarr.servarr.com/v1/update/develop/changes?os=linux | jq -r '.[0].version' ''',
script: ''' curl -sL https://radarr.servarr.com/v1/update/nightly/changes?runtime=netcore%26os=linux | jq -r '.[0].version' ''',
returnStdout: true).trim()
env.RELEASE_LINK = 'custom_command'
}
@@ -116,13 +122,37 @@ pipeline {
env.EXT_RELEASE_CLEAN = sh(
script: '''echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g' ''',
returnStdout: true).trim()
def semver = env.EXT_RELEASE_CLEAN =~ /(\d+)\.(\d+)\.(\d+)/
if (semver.find()) {
env.SEMVER = "${semver[0][1]}.${semver[0][2]}.${semver[0][3]}"
} else {
semver = env.EXT_RELEASE_CLEAN =~ /(\d+)\.(\d+)(?:\.(\d+))?(.*)/
if (semver.find()) {
if (semver[0][3]) {
env.SEMVER = "${semver[0][1]}.${semver[0][2]}.${semver[0][3]}"
} else if (!semver[0][3] && !semver[0][4]) {
env.SEMVER = "${semver[0][1]}.${semver[0][2]}.${(new Date()).format('YYYYMMdd')}"
}
}
}
if (env.SEMVER != null) {
if (BRANCH_NAME != "master" && BRANCH_NAME != "main") {
env.SEMVER = "${env.SEMVER}-${BRANCH_NAME}"
}
println("SEMVER: ${env.SEMVER}")
} else {
println("No SEMVER detected")
}
}
}
}
// If this is a develop build use live docker endpoints
// If this is a nightly build use live docker endpoints
stage("Set ENV live build"){
when {
branch "develop"
branch "nightly"
environment name: 'CHANGE_ID', value: ''
}
steps {
@@ -130,21 +160,22 @@ pipeline {
env.IMAGE = env.DOCKERHUB_IMAGE
env.GITHUBIMAGE = 'ghcr.io/' + env.LS_USER + '/' + env.CONTAINER_NAME
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/' + env.CONTAINER_NAME
env.QUAYIMAGE = 'quay.io/linuxserver.io/' + env.CONTAINER_NAME
if (env.MULTIARCH == 'true') {
env.CI_TAGS = 'amd64-develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm32v7-develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.CI_TAGS = 'amd64-nightly-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-nightly-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
} else {
env.CI_TAGS = 'develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.CI_TAGS = 'nightly-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
}
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.META_TAG = 'develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.EXT_RELEASE_TAG = 'develop-version-' + env.EXT_RELEASE_CLEAN
env.META_TAG = 'nightly-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.EXT_RELEASE_TAG = 'nightly-version-' + env.EXT_RELEASE_CLEAN
}
}
}
// If this is a dev build use dev docker endpoints
stage("Set ENV dev build"){
when {
not {branch "develop"}
not {branch "nightly"}
environment name: 'CHANGE_ID', value: ''
}
steps {
@@ -152,14 +183,15 @@ pipeline {
env.IMAGE = env.DEV_DOCKERHUB_IMAGE
env.GITHUBIMAGE = 'ghcr.io/' + env.LS_USER + '/lsiodev-' + env.CONTAINER_NAME
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lsiodev-' + env.CONTAINER_NAME
env.QUAYIMAGE = 'quay.io/linuxserver.io/lsiodev-' + env.CONTAINER_NAME
if (env.MULTIARCH == 'true') {
env.CI_TAGS = 'amd64-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm32v7-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm64v8-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.CI_TAGS = 'amd64-nightly-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '|arm64v8-nightly-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
} else {
env.CI_TAGS = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.CI_TAGS = 'nightly-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
}
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.META_TAG = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.EXT_RELEASE_TAG = 'develop-version-' + env.EXT_RELEASE_CLEAN
env.META_TAG = 'nightly-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.EXT_RELEASE_TAG = 'nightly-version-' + env.EXT_RELEASE_CLEAN
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DEV_DOCKERHUB_IMAGE + '/tags/'
}
}
@@ -174,14 +206,15 @@ pipeline {
env.IMAGE = env.PR_DOCKERHUB_IMAGE
env.GITHUBIMAGE = 'ghcr.io/' + env.LS_USER + '/lspipepr-' + env.CONTAINER_NAME
env.GITLABIMAGE = 'registry.gitlab.com/linuxserver.io/' + env.LS_REPO + '/lspipepr-' + env.CONTAINER_NAME
env.QUAYIMAGE = 'quay.io/linuxserver.io/lspipepr-' + env.CONTAINER_NAME
if (env.MULTIARCH == 'true') {
env.CI_TAGS = 'amd64-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST + '|arm32v7-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST + '|arm64v8-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
env.CI_TAGS = 'amd64-nightly-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm64v8-nightly-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
} else {
env.CI_TAGS = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
env.CI_TAGS = 'nightly-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
}
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
env.META_TAG = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-pr-' + env.PULL_REQUEST
env.EXT_RELEASE_TAG = 'develop-version-' + env.EXT_RELEASE_CLEAN
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
env.META_TAG = 'nightly-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
env.EXT_RELEASE_TAG = 'nightly-version-' + env.EXT_RELEASE_CLEAN
env.CODE_URL = 'https://github.com/' + env.LS_USER + '/' + env.LS_REPO + '/pull/' + env.PULL_REQUEST
env.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.PR_DOCKERHUB_IMAGE + '/tags/'
}
@@ -200,26 +233,23 @@ pipeline {
script{
env.SHELLCHECK_URL = 'https://ci-tests.linuxserver.io/' + env.IMAGE + '/' + env.META_TAG + '/shellcheck-result.xml'
}
sh '''curl -sL https://raw.githubusercontent.com/linuxserver/docker-shellcheck/master/checkrun.sh | /bin/bash'''
sh '''curl -sL https://raw.githubusercontent.com/linuxserver/docker-jenkins-builder/master/checkrun.sh | /bin/bash'''
sh '''#! /bin/bash
set -e
docker pull ghcr.io/linuxserver/lsiodev-spaces-file-upload:latest
docker run --rm \
-e DESTINATION=\"${IMAGE}/${META_TAG}/shellcheck-result.xml\" \
-e FILE_NAME="shellcheck-result.xml" \
-e MIMETYPE="text/xml" \
-v ${WORKSPACE}:/mnt \
-e SECRET_KEY=\"${S3_SECRET}\" \
-e ACCESS_KEY=\"${S3_KEY}\" \
-t ghcr.io/linuxserver/lsiodev-spaces-file-upload:latest \
python /upload.py'''
-v ${WORKSPACE}:/mnt \
-e AWS_ACCESS_KEY_ID=\"${S3_KEY}\" \
-e AWS_SECRET_ACCESS_KEY=\"${S3_SECRET}\" \
ghcr.io/linuxserver/baseimage-alpine:3.17 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
apk add --no-cache py3-pip && \
pip install s3cmd && \
s3cmd put --no-preserve --acl-public -m text/xml /mnt/shellcheck-result.xml s3://ci-tests.linuxserver.io/${IMAGE}/${META_TAG}/shellcheck-result.xml" || :'''
}
}
}
// Use helper containers to render templated files
stage('Update-Templates') {
when {
branch "develop"
branch "nightly"
environment name: 'CHANGE_ID', value: ''
expression {
env.CONTAINER_NAME != null
@@ -230,13 +260,13 @@ pipeline {
set -e
TEMPDIR=$(mktemp -d)
docker pull ghcr.io/linuxserver/jenkins-builder:latest
docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH=develop -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest
docker run --rm -e CONTAINER_NAME=${CONTAINER_NAME} -e GITHUB_BRANCH=nightly -v ${TEMPDIR}:/ansible/jenkins ghcr.io/linuxserver/jenkins-builder:latest
# Stage 1 - Jenkinsfile update
if [[ "$(md5sum Jenkinsfile | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile | awk '{ print $1 }')" ]]; then
mkdir -p ${TEMPDIR}/repo
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
cd ${TEMPDIR}/repo/${LS_REPO}
git checkout -f develop
git checkout -f nightly
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile ${TEMPDIR}/repo/${LS_REPO}/
git add Jenkinsfile
git commit -m 'Bot Updating Templated Files'
@@ -249,7 +279,7 @@ pipeline {
echo "Jenkinsfile is up to date."
fi
# Stage 2 - Delete old templates
OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md"
OLD_TEMPLATES=".github/ISSUE_TEMPLATE.md .github/ISSUE_TEMPLATE/issue.bug.md .github/ISSUE_TEMPLATE/issue.feature.md .github/workflows/call_invalid_helper.yml .github/workflows/stale.yml Dockerfile.armhf"
for i in ${OLD_TEMPLATES}; do
if [[ -f "${i}" ]]; then
TEMPLATES_TO_DELETE="${i} ${TEMPLATES_TO_DELETE}"
@@ -259,15 +289,14 @@ pipeline {
mkdir -p ${TEMPDIR}/repo
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
cd ${TEMPDIR}/repo/${LS_REPO}
git checkout -f develop
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
git checkout -f nightly
for i in ${TEMPLATES_TO_DELETE}; do
git rm "${i}"
done
git commit -m 'Bot Updating Templated Files'
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
echo "Deleting old templates"
echo "Deleting old and deprecated templates"
rm -Rf ${TEMPDIR}
exit 0
else
@@ -281,29 +310,30 @@ pipeline {
mkdir -p ${TEMPDIR}/repo
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/repo/${LS_REPO}
cd ${TEMPDIR}/repo/${LS_REPO}
git checkout -f develop
git checkout -f nightly
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/workflows
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/ISSUE_TEMPLATE
cp --parents ${TEMPLATED_FILES} ${TEMPDIR}/repo/${LS_REPO}/ || :
cp --parents readme-vars.yml ${TEMPDIR}/repo/${LS_REPO}/ || :
cd ${TEMPDIR}/repo/${LS_REPO}/
if ! grep -q '.jenkins-external' .gitignore 2>/dev/null; then
echo ".jenkins-external" >> .gitignore
git add .gitignore
fi
git add ${TEMPLATED_FILES}
git add readme-vars.yml ${TEMPLATED_FILES}
git commit -m 'Bot Updating Templated Files'
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git --all
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
else
echo "false" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
fi
mkdir -p ${TEMPDIR}/gitbook
git clone https://github.com/linuxserver/docker-documentation.git ${TEMPDIR}/gitbook/docker-documentation
if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/gitbook/docker-documentation/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/gitbook/docker-documentation/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md ${TEMPDIR}/gitbook/docker-documentation/images/
cd ${TEMPDIR}/gitbook/docker-documentation/
git add images/docker-${CONTAINER_NAME}.md
mkdir -p ${TEMPDIR}/docs
git clone https://github.com/linuxserver/docker-documentation.git ${TEMPDIR}/docs/docker-documentation
if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md) || ("$(md5sum ${TEMPDIR}/docs/docker-documentation/docs/images/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md | awk '{ print $1 }')") ]]; then
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/docker-${CONTAINER_NAME}.md ${TEMPDIR}/docs/docker-documentation/docs/images/
cd ${TEMPDIR}/docs/docker-documentation
git add docs/images/docker-${CONTAINER_NAME}.md
git commit -m 'Bot Updating Documentation'
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/linuxserver/docker-documentation.git --all
fi
@@ -312,13 +342,17 @@ pipeline {
git clone https://github.com/linuxserver/templates.git ${TEMPDIR}/unraid/templates
if [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-logo.png ]]; then
sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-logo.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml
elif [[ -f ${TEMPDIR}/unraid/docker-templates/linuxserver.io/img/${CONTAINER_NAME}-icon.png ]]; then
sed -i "s|master/linuxserver.io/img/linuxserver-ls-logo.png|master/linuxserver.io/img/${CONTAINER_NAME}-icon.png|" ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml
fi
if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then
cd ${TEMPDIR}/unraid/templates/
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
echo "Image is on the ignore list, removing Unraid template"
git rm unraid/${CONTAINER_NAME}.xml || :
git commit -m 'Bot Removing Deprecated Unraid Template' || :
echo "Image is on the ignore list, marking Unraid template as deprecated"
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
git add -u unraid/${CONTAINER_NAME}.xml
git mv unraid/${CONTAINER_NAME}.xml unraid/deprecated/${CONTAINER_NAME}.xml || :
git commit -m 'Bot Moving Deprecated Unraid Template' || :
else
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
git add unraid/${CONTAINER_NAME}.xml
@@ -337,7 +371,7 @@ pipeline {
// Exit the build if the Templated files were just updated
stage('Template-exit') {
when {
branch "develop"
branch "nightly"
environment name: 'CHANGE_ID', value: ''
environment name: 'FILES_UPDATED', value: 'true'
expression {
@@ -350,6 +384,26 @@ pipeline {
}
}
}
// If this is a nightly build check the S6 service file perms
stage("Check S6 Service file Permissions"){
when {
branch "nightly"
environment name: 'CHANGE_ID', value: ''
environment name: 'EXIT_STATUS', value: ''
}
steps {
script{
sh '''#! /bin/bash
WRONG_PERM=$(find ./ -path "./.git" -prune -o \\( -name "run" -o -name "finish" -o -name "check" \\) -not -perm -u=x,g=x,o=x -print)
if [[ -n "${WRONG_PERM}" ]]; then
echo "The following S6 service files are missing the executable bit; canceling the faulty build: ${WRONG_PERM}"
exit 1
else
echo "S6 service file perms look good."
fi '''
}
}
}
/* #######################
GitLab Mirroring
####################### */
@@ -376,12 +430,15 @@ pipeline {
// Build Docker container for push to LS Repo
stage('Build-Single') {
when {
environment name: 'MULTIARCH', value: 'false'
expression {
env.MULTIARCH == 'false' || params.PACKAGE_CHECK == 'true'
}
environment name: 'EXIT_STATUS', value: ''
}
steps {
echo "Running on node: ${NODE_NAME}"
sh "docker build \
sh "sed -r -i 's|(^FROM .*)|\\1\\n\\nENV LSIO_FIRST_PARTY=true|g' Dockerfile"
sh "docker buildx build \
--label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-radarr/packages\" \
@@ -394,21 +451,25 @@ pipeline {
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Radarr\" \
--label \"org.opencontainers.image.description=[Radarr](https://github.com/Radarr/Radarr) - A fork of Sonarr to work with movies à la Couchpotato. \" \
--no-cache --pull -t ${IMAGE}:${META_TAG} \
--no-cache --pull -t ${IMAGE}:${META_TAG} --platform=linux/amd64 \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
}
}
// Build MultiArch Docker containers for push to LS Repo
stage('Build-Multi') {
when {
environment name: 'MULTIARCH', value: 'true'
allOf {
environment name: 'MULTIARCH', value: 'true'
expression { params.PACKAGE_CHECK == 'false' }
}
environment name: 'EXIT_STATUS', value: ''
}
parallel {
stage('Build X86') {
steps {
echo "Running on node: ${NODE_NAME}"
sh "docker build \
sh "sed -r -i 's|(^FROM .*)|\\1\\n\\nENV LSIO_FIRST_PARTY=true|g' Dockerfile"
sh "docker buildx build \
--label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-radarr/packages\" \
@@ -421,44 +482,10 @@ pipeline {
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Radarr\" \
--label \"org.opencontainers.image.description=[Radarr](https://github.com/Radarr/Radarr) - A fork of Sonarr to work with movies à la Couchpotato. \" \
--no-cache --pull -t ${IMAGE}:amd64-${META_TAG} \
--no-cache --pull -t ${IMAGE}:amd64-${META_TAG} --platform=linux/amd64 \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
}
}
stage('Build ARMHF') {
agent {
label 'ARMHF'
}
steps {
echo "Running on node: ${NODE_NAME}"
echo 'Logging into Github'
sh '''#! /bin/bash
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
'''
sh "docker build \
--label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-radarr/packages\" \
--label \"org.opencontainers.image.documentation=https://docs.linuxserver.io/images/docker-radarr\" \
--label \"org.opencontainers.image.source=https://github.com/linuxserver/docker-radarr\" \
--label \"org.opencontainers.image.version=${EXT_RELEASE_CLEAN}-ls${LS_TAG_NUMBER}\" \
--label \"org.opencontainers.image.revision=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.vendor=linuxserver.io\" \
--label \"org.opencontainers.image.licenses=GPL-3.0-only\" \
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Radarr\" \
--label \"org.opencontainers.image.description=[Radarr](https://github.com/Radarr/Radarr) - A fork of Sonarr to work with movies à la Couchpotato. \" \
--no-cache --pull -f Dockerfile.armhf -t ${IMAGE}:arm32v7-${META_TAG} \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
sh "docker tag ${IMAGE}:arm32v7-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
retry(5) {
sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}"
}
sh '''docker rmi \
${IMAGE}:arm32v7-${META_TAG} \
ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
}
}
stage('Build ARM64') {
agent {
label 'ARM64'
@@ -469,7 +496,8 @@ pipeline {
sh '''#! /bin/bash
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
'''
sh "docker build \
sh "sed -r -i 's|(^FROM .*)|\\1\\n\\nENV LSIO_FIRST_PARTY=true|g' Dockerfile.aarch64"
sh "docker buildx build \
--label \"org.opencontainers.image.created=${GITHUB_DATE}\" \
--label \"org.opencontainers.image.authors=linuxserver.io\" \
--label \"org.opencontainers.image.url=https://github.com/linuxserver/docker-radarr/packages\" \
@@ -482,15 +510,18 @@ pipeline {
--label \"org.opencontainers.image.ref.name=${COMMIT_SHA}\" \
--label \"org.opencontainers.image.title=Radarr\" \
--label \"org.opencontainers.image.description=[Radarr](https://github.com/Radarr/Radarr) - A fork of Sonarr to work with movies à la Couchpotato. \" \
--no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} \
--no-cache --pull -f Dockerfile.aarch64 -t ${IMAGE}:arm64v8-${META_TAG} --platform=linux/arm64 \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
sh "docker tag ${IMAGE}:arm64v8-${META_TAG} ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
retry(5) {
sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
}
sh '''docker rmi \
${IMAGE}:arm64v8-${META_TAG} \
ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || :'''
sh '''#! /bin/bash
containers=$(docker ps -aq)
if [[ -n "${containers}" ]]; then
docker stop ${containers}
fi
docker system prune -af --volumes || : '''
}
}
}
@@ -498,7 +529,7 @@ pipeline {
// Take the image we just built and dump package versions for comparison
stage('Update-packages') {
when {
branch "develop"
branch "nightly"
environment name: 'CHANGE_ID', value: ''
environment name: 'EXIT_STATUS', value: ''
}
@@ -506,27 +537,22 @@ pipeline {
sh '''#! /bin/bash
set -e
TEMPDIR=$(mktemp -d)
if [ "${MULTIARCH}" == "true" ]; then
if [ "${MULTIARCH}" == "true" ] && [ "${PACKAGE_CHECK}" == "false" ]; then
LOCAL_CONTAINER=${IMAGE}:amd64-${META_TAG}
else
LOCAL_CONTAINER=${IMAGE}:${META_TAG}
fi
if [ "${DIST_IMAGE}" == "alpine" ]; then
docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
apk info -v > /tmp/package_versions.txt && \
sort -o /tmp/package_versions.txt /tmp/package_versions.txt && \
chmod 777 /tmp/package_versions.txt'
elif [ "${DIST_IMAGE}" == "ubuntu" ]; then
docker run --rm --entrypoint '/bin/sh' -v ${TEMPDIR}:/tmp ${LOCAL_CONTAINER} -c '\
apt list -qq --installed | sed "s#/.*now ##g" | cut -d" " -f1 > /tmp/package_versions.txt && \
sort -o /tmp/package_versions.txt /tmp/package_versions.txt && \
chmod 777 /tmp/package_versions.txt'
fi
touch ${TEMPDIR}/package_versions.txt
docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v ${TEMPDIR}:/tmp \
ghcr.io/anchore/syft:latest \
${LOCAL_CONTAINER} -o table=/tmp/package_versions.txt
NEW_PACKAGE_TAG=$(md5sum ${TEMPDIR}/package_versions.txt | cut -c1-8 )
echo "Package tag sha from current packages in buit container is ${NEW_PACKAGE_TAG} comparing to old ${PACKAGE_TAG} from github"
if [ "${NEW_PACKAGE_TAG}" != "${PACKAGE_TAG}" ]; then
git clone https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/${LS_REPO}
git --git-dir ${TEMPDIR}/${LS_REPO}/.git checkout -f develop
git --git-dir ${TEMPDIR}/${LS_REPO}/.git checkout -f nightly
cp ${TEMPDIR}/package_versions.txt ${TEMPDIR}/${LS_REPO}/
cd ${TEMPDIR}/${LS_REPO}/
wait
@@ -550,19 +576,12 @@ pipeline {
// Exit the build if the package file was just updated
stage('PACKAGE-exit') {
when {
branch "develop"
branch "nightly"
environment name: 'CHANGE_ID', value: ''
environment name: 'PACKAGE_UPDATED', value: 'true'
environment name: 'EXIT_STATUS', value: ''
}
steps {
sh '''#! /bin/bash
echo "Packages were updated. Cleaning up the image and exiting."
if [ "${MULTIARCH}" == "true" ]; then
docker rmi ${IMAGE}:amd64-${META_TAG}
else
docker rmi ${IMAGE}:${META_TAG}
fi'''
script{
env.EXIT_STATUS = 'ABORTED'
}
@@ -571,7 +590,7 @@ pipeline {
// Exit the build if this is just a package check and there are no changes to push
stage('PACKAGECHECK-exit') {
when {
branch "develop"
branch "nightly"
environment name: 'CHANGE_ID', value: ''
environment name: 'PACKAGE_UPDATED', value: 'false'
environment name: 'EXIT_STATUS', value: ''
@@ -580,13 +599,6 @@ pipeline {
}
}
steps {
sh '''#! /bin/bash
echo "There are no package updates. Cleaning up the image and exiting."
if [ "${MULTIARCH}" == "true" ]; then
docker rmi ${IMAGE}:amd64-${META_TAG}
else
docker rmi ${IMAGE}:${META_TAG}
fi'''
script{
env.EXIT_STATUS = 'ABORTED'
}
@@ -608,14 +620,13 @@ pipeline {
]) {
script{
env.CI_URL = 'https://ci-tests.linuxserver.io/' + env.IMAGE + '/' + env.META_TAG + '/index.html'
env.CI_JSON_URL = 'https://ci-tests.linuxserver.io/' + env.IMAGE + '/' + env.META_TAG + '/report.json'
}
sh '''#! /bin/bash
set -e
docker pull ghcr.io/linuxserver/ci:latest
if [ "${MULTIARCH}" == "true" ]; then
docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
fi
docker run --rm \
@@ -634,10 +645,8 @@ pipeline {
-e WEB_SCREENSHOT=\"${CI_WEB}\" \
-e WEB_AUTH=\"${CI_AUTH}\" \
-e WEB_PATH=\"${CI_WEBPATH}\" \
-e DO_REGION="ams3" \
-e DO_BUCKET="lsio-ci" \
-t ghcr.io/linuxserver/ci:latest \
python /ci/ci.py'''
python3 test_build.py'''
}
}
}
@@ -657,6 +666,12 @@ pipeline {
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
usernameVariable: 'DOCKERUSER',
passwordVariable: 'DOCKERPASS'
],
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
usernameVariable: 'QUAYUSER',
passwordVariable: 'QUAYPASS'
]
]) {
retry(5) {
@@ -665,24 +680,23 @@ pipeline {
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
for PUSHIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
for PUSHIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${QUAYIMAGE}" "${IMAGE}"; do
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:develop
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:nightly
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${EXT_RELEASE_TAG}
docker push ${PUSHIMAGE}:develop
if [ -n "${SEMVER}" ]; then
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${SEMVER}
fi
docker push ${PUSHIMAGE}:nightly
docker push ${PUSHIMAGE}:${META_TAG}
docker push ${PUSHIMAGE}:${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
docker push ${PUSHIMAGE}:${SEMVER}
fi
done
'''
}
sh '''#! /bin/bash
for DELETEIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
docker rmi \
${DELETEIMAGE}:${META_TAG} \
${DELETEIMAGE}:${EXT_RELEASE_TAG} \
${DELETEIMAGE}:develop || :
done
'''
}
}
}
@@ -699,6 +713,12 @@ pipeline {
credentialsId: '3f9ba4d5-100d-45b0-a3c4-633fd6061207',
usernameVariable: 'DOCKERUSER',
passwordVariable: 'DOCKERPASS'
],
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
usernameVariable: 'QUAYUSER',
passwordVariable: 'QUAYPASS'
]
]) {
retry(5) {
@@ -707,73 +727,72 @@ pipeline {
echo $DOCKERPASS | docker login -u $DOCKERUSER --password-stdin
echo $GITHUB_TOKEN | docker login ghcr.io -u LinuxServer-CI --password-stdin
echo $GITLAB_TOKEN | docker login registry.gitlab.com -u LinuxServer.io --password-stdin
echo $QUAYPASS | docker login quay.io -u $QUAYUSER --password-stdin
if [ "${CI}" == "false" ]; then
docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER}
docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm32v7-${META_TAG}
docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
fi
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}"; do
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
docker tag ${IMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG}
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-develop
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-develop
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-develop
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-nightly
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
docker tag ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
docker tag ${IMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-nightly
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${SEMVER}
docker tag ${MANIFESTIMAGE}:arm64v8-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
fi
docker push ${MANIFESTIMAGE}:amd64-${META_TAG}
docker push ${MANIFESTIMAGE}:arm32v7-${META_TAG}
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker push ${MANIFESTIMAGE}:amd64-develop
docker push ${MANIFESTIMAGE}:arm32v7-develop
docker push ${MANIFESTIMAGE}:arm64v8-develop
docker push ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG}
docker push ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG}
docker push ${MANIFESTIMAGE}:amd64-nightly
docker push ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker push ${MANIFESTIMAGE}:arm64v8-nightly
docker push ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
docker manifest push --purge ${MANIFESTIMAGE}:develop || :
docker manifest create ${MANIFESTIMAGE}:develop ${MANIFESTIMAGE}:amd64-develop ${MANIFESTIMAGE}:arm32v7-develop ${MANIFESTIMAGE}:arm64v8-develop
docker manifest annotate ${MANIFESTIMAGE}:develop ${MANIFESTIMAGE}:arm32v7-develop --os linux --arch arm
docker manifest annotate ${MANIFESTIMAGE}:develop ${MANIFESTIMAGE}:arm64v8-develop --os linux --arch arm64 --variant v8
if [ -n "${SEMVER}" ]; then
docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
fi
docker manifest push --purge ${MANIFESTIMAGE}:nightly || :
docker manifest create ${MANIFESTIMAGE}:nightly ${MANIFESTIMAGE}:amd64-nightly ${MANIFESTIMAGE}:arm64v8-nightly
docker manifest annotate ${MANIFESTIMAGE}:nightly ${MANIFESTIMAGE}:arm64v8-nightly --os linux --arch arm64 --variant v8
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG} || :
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm32v7-${META_TAG} --os linux --arch arm
docker manifest create ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker manifest annotate ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} --os linux --arch arm64 --variant v8
docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} || :
docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm32v7-${EXT_RELEASE_TAG} --os linux --arch arm
docker manifest create ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
docker manifest annotate ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} --os linux --arch arm64 --variant v8
docker manifest push --purge ${MANIFESTIMAGE}:develop
if [ -n "${SEMVER}" ]; then
docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER} || :
docker manifest create ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
docker manifest annotate ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} --os linux --arch arm64 --variant v8
fi
token=$(curl -sX GET "https://ghcr.io/token?scope=repository%3Alinuxserver%2F${CONTAINER_NAME}%3Apull" | jq -r '.token')
digest=$(curl -s \
--header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
--header "Authorization: Bearer ${token}" \
"https://ghcr.io/v2/linuxserver/${CONTAINER_NAME}/manifests/arm32v7-nightly")
if [[ $(echo "$digest" | jq -r '.layers') != "null" ]]; then
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-nightly || :
docker manifest create ${MANIFESTIMAGE}:arm32v7-nightly ${MANIFESTIMAGE}:amd64-nightly
docker manifest push --purge ${MANIFESTIMAGE}:arm32v7-nightly
fi
docker manifest push --purge ${MANIFESTIMAGE}:nightly
docker manifest push --purge ${MANIFESTIMAGE}:${META_TAG}
docker manifest push --purge ${MANIFESTIMAGE}:${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
docker manifest push --purge ${MANIFESTIMAGE}:${SEMVER}
fi
done
'''
}
sh '''#! /bin/bash
for DELETEIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${IMAGE}"; do
docker rmi \
${DELETEIMAGE}:amd64-${META_TAG} \
${DELETEIMAGE}:amd64-develop \
${DELETEIMAGE}:amd64-${EXT_RELEASE_TAG} \
${DELETEIMAGE}:arm32v7-${META_TAG} \
${DELETEIMAGE}:arm32v7-develop \
${DELETEIMAGE}:arm32v7-${EXT_RELEASE_TAG} \
${DELETEIMAGE}:arm64v8-${META_TAG} \
${DELETEIMAGE}:arm64v8-develop \
${DELETEIMAGE}:arm64v8-${EXT_RELEASE_TAG} || :
done
docker rmi \
ghcr.io/linuxserver/lsiodev-buildcache:arm32v7-${COMMIT_SHA}-${BUILD_NUMBER} \
ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || :
'''
}
}
}
// If this is a public release tag it in the LS Github
stage('Github-Tag-Push-Release') {
when {
branch "develop"
branch "nightly"
expression {
env.LS_RELEASE != env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
}
@@ -785,14 +804,14 @@ pipeline {
sh '''curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/git/tags \
-d '{"tag":"'${META_TAG}'",\
"object": "'${COMMIT_SHA}'",\
"message": "Tagging Release '${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}' to develop",\
"message": "Tagging Release '${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}' to nightly",\
"type": "commit",\
"tagger": {"name": "LinuxServer Jenkins","email": "jenkins@linuxserver.io","date": "'${GITHUB_DATE}'"}}' '''
echo "Pushing New release for Tag"
sh '''#! /bin/bash
echo "Updating to ${EXT_RELEASE_CLEAN}" > releasebody.json
echo '{"tag_name":"'${META_TAG}'",\
"target_commitish": "develop",\
"target_commitish": "nightly",\
"name": "'${META_TAG}'",\
"body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n\\n**Remote Changes:**\\n\\n' > start
printf '","draft": false,"prerelease": true}' >> releasebody.json
@@ -800,6 +819,41 @@ pipeline {
curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done'''
}
}
// Add protection to the release branch
stage('Github-Release-Branch-Protection') {
when {
branch "nightly"
environment name: 'CHANGE_ID', value: ''
environment name: 'EXIT_STATUS', value: ''
}
steps {
echo "Setting up protection for release branch nightly"
sh '''#! /bin/bash
curl -H "Authorization: token ${GITHUB_TOKEN}" -X PUT https://api.github.com/repos/${LS_USER}/${LS_REPO}/branches/nightly/protection \
-d $(jq -c . << EOF
{
"required_status_checks": null,
"enforce_admins": false,
"required_pull_request_reviews": {
"dismiss_stale_reviews": false,
"require_code_owner_reviews": false,
"require_last_push_approval": false,
"required_approving_review_count": 1
},
"restrictions": null,
"required_linear_history": false,
"allow_force_pushes": false,
"allow_deletions": false,
"block_creations": false,
"required_conversation_resolution": true,
"lock_branch": false,
"allow_fork_syncing": false,
"required_signatures": false
}
EOF
) '''
}
}
// Use helper container to sync the current README on master to the dockerhub endpoint
stage('Sync-README') {
when {
@@ -837,12 +891,78 @@ pipeline {
stage('Pull Request Comment') {
when {
not {environment name: 'CHANGE_ID', value: ''}
environment name: 'CI', value: 'true'
environment name: 'EXIT_STATUS', value: ''
}
steps {
sh '''curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/issues/${PULL_REQUEST}/comments \
-d '{"body": "I am a bot, here are the test results for this PR: \\n'${CI_URL}' \\n'${SHELLCHECK_URL}'"}' '''
sh '''#! /bin/bash
# Function to retrieve JSON data from URL
get_json() {
local url="$1"
local response=$(curl -s "$url")
if [ $? -ne 0 ]; then
echo "Failed to retrieve JSON data from $url"
return 1
fi
local json=$(echo "$response" | jq .)
if [ $? -ne 0 ]; then
echo "Failed to parse JSON data from $url"
return 1
fi
echo "$json"
}
build_table() {
local data="$1"
# Get the keys in the JSON data
local keys=$(echo "$data" | jq -r 'to_entries | map(.key) | .[]')
# Check if keys are empty
if [ -z "$keys" ]; then
echo "JSON report data does not contain any keys or the report does not exist."
return 1
fi
# Build table header
local header="| Tag | Passed |\\n| --- | --- |\\n"
# Loop through the JSON data to build the table rows
local rows=""
for build in $keys; do
local status=$(echo "$data" | jq -r ".[\\"$build\\"].test_success")
if [ "$status" = "true" ]; then
status="✅"
else
status="❌"
fi
local row="| "$build" | "$status" |\\n"
rows="${rows}${row}"
done
local table="${header}${rows}"
local escaped_table=$(echo "$table" | sed 's/\"/\\\\"/g')
echo "$escaped_table"
}
if [[ "${CI}" = "true" ]]; then
# Retrieve JSON data from URL
data=$(get_json "$CI_JSON_URL")
# Create table from JSON data
table=$(build_table "$data")
echo -e "$table"
curl -X POST -H "Authorization: token $GITHUB_TOKEN" \
-H "Accept: application/vnd.github.v3+json" \
"https://api.github.com/repos/$LS_USER/$LS_REPO/issues/$PULL_REQUEST/comments" \
-d "{\\"body\\": \\"I am a bot, here are the test results for this PR: \\n${CI_URL}\\n${SHELLCHECK_URL}\\n${table}\\"}"
else
curl -X POST -H "Authorization: token $GITHUB_TOKEN" \
-H "Accept: application/vnd.github.v3+json" \
"https://api.github.com/repos/$LS_USER/$LS_REPO/issues/$PULL_REQUEST/comments" \
-d "{\\"body\\": \\"I am a bot, here is the pushed image/manifest for this PR: \\n\\n\\`${GITHUBIMAGE}:${META_TAG}\\`\\"}"
fi
'''
}
}
}
@@ -856,18 +976,26 @@ pipeline {
sh 'echo "build aborted"'
}
else if (currentBuild.currentResult == "SUCCESS"){
sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://wiki.jenkins-ci.org/download/attachments/2916393/headshot.png","embeds": [{"color": 1681177,\
sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/jenkins-avatar.png","embeds": [{"color": 1681177,\
"description": "**Build:** '${BUILD_NUMBER}'\\n**CI Results:** '${CI_URL}'\\n**ShellCheck Results:** '${SHELLCHECK_URL}'\\n**Status:** Success\\n**Job:** '${RUN_DISPLAY_URL}'\\n**Change:** '${CODE_URL}'\\n**External Release:**: '${RELEASE_LINK}'\\n**DockerHub:** '${DOCKERHUB_LINK}'\\n"}],\
"username": "Jenkins"}' ${BUILDS_DISCORD} '''
}
else {
sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://wiki.jenkins-ci.org/download/attachments/2916393/headshot.png","embeds": [{"color": 16711680,\
sh ''' curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/jenkins-avatar.png","embeds": [{"color": 16711680,\
"description": "**Build:** '${BUILD_NUMBER}'\\n**CI Results:** '${CI_URL}'\\n**ShellCheck Results:** '${SHELLCHECK_URL}'\\n**Status:** failure\\n**Job:** '${RUN_DISPLAY_URL}'\\n**Change:** '${CODE_URL}'\\n**External Release:**: '${RELEASE_LINK}'\\n**DockerHub:** '${DOCKERHUB_LINK}'\\n"}],\
"username": "Jenkins"}' ${BUILDS_DISCORD} '''
}
}
}
cleanup {
sh '''#! /bin/bash
echo "Performing docker system prune!!"
containers=$(docker ps -aq)
if [[ -n "${containers}" ]]; then
docker stop ${containers}
fi
docker system prune -af --volumes || :
'''
cleanWs()
}
}
+143 -68
View File
@@ -1,6 +1,5 @@
<!-- DO NOT EDIT THIS FILE MANUALLY -->
<!-- Please read the https://github.com/linuxserver/docker-radarr/blob/develop/.github/CONTRIBUTING.md -->
<!-- DO NOT EDIT THIS FILE MANUALLY -->
<!-- Please read https://github.com/linuxserver/docker-radarr/blob/nightly/.github/CONTRIBUTING.md -->
[![linuxserver.io](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/linuxserver_medium.png)](https://linuxserver.io)
[![Blog](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Blog)](https://blog.linuxserver.io "all the things you can do with our containers including How-To guides, opinions and much more!")
@@ -29,106 +28,109 @@ Find us at:
# [linuxserver/radarr](https://github.com/linuxserver/docker-radarr)
[![Scarf.io pulls](https://scarf.sh/installs-badge/linuxserver-ci/linuxserver%2Fradarr?color=94398d&label-color=555555&logo-color=ffffff&style=for-the-badge&package-type=docker)](https://scarf.sh/gateway/linuxserver-ci/docker/linuxserver%2Fradarr)
[![GitHub Stars](https://img.shields.io/github/stars/linuxserver/docker-radarr.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github)](https://github.com/linuxserver/docker-radarr)
[![GitHub Release](https://img.shields.io/github/release/linuxserver/docker-radarr.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=github)](https://github.com/linuxserver/docker-radarr/releases)
[![GitHub Package Repository](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitHub%20Package&logo=github)](https://github.com/linuxserver/docker-radarr/packages)
[![GitLab Container Registry](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitLab%20Registry&logo=gitlab)](https://gitlab.com/linuxserver.io/docker-radarr/container_registry)
[![MicroBadger Layers](https://img.shields.io/microbadger/layers/linuxserver/radarr.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge)](https://microbadger.com/images/linuxserver/radarr "Get your own version badge on microbadger.com")
[![Quay.io](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Quay.io)](https://quay.io/repository/linuxserver.io/radarr)
[![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/radarr.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=pulls&logo=docker)](https://hub.docker.com/r/linuxserver/radarr)
[![Docker Stars](https://img.shields.io/docker/stars/linuxserver/radarr.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=stars&logo=docker)](https://hub.docker.com/r/linuxserver/radarr)
[![Jenkins Build](https://img.shields.io/jenkins/build?labelColor=555555&logoColor=ffffff&style=for-the-badge&jobUrl=https%3A%2F%2Fci.linuxserver.io%2Fjob%2FDocker-Pipeline-Builders%2Fjob%2Fdocker-radarr%2Fjob%2Fdevelop%2F&logo=jenkins)](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/)
[![Jenkins Build](https://img.shields.io/jenkins/build?labelColor=555555&logoColor=ffffff&style=for-the-badge&jobUrl=https%3A%2F%2Fci.linuxserver.io%2Fjob%2FDocker-Pipeline-Builders%2Fjob%2Fdocker-radarr%2Fjob%2Fnightly%2F&logo=jenkins)](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/nightly/)
[![LSIO CI](https://img.shields.io/badge/dynamic/yaml?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=CI&query=CI&url=https%3A%2F%2Fci-tests.linuxserver.io%2Flinuxserver%2Fradarr%2Flatest%2Fci-status.yml)](https://ci-tests.linuxserver.io/linuxserver/radarr/latest/index.html)
[Radarr](https://github.com/Radarr/Radarr) - A fork of Sonarr to work with movies à la Couchpotato.
[![radarr](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/radarr.png)](https://github.com/Radarr/Radarr)
[![radarr](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/radarr_alpha.png)](https://github.com/Radarr/Radarr)
## Supported Architectures
Our images support multiple architectures such as `x86-64`, `arm64` and `armhf`. We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://distribution.github.io/distribution/spec/manifest-v2-2/#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
Simply pulling `ghcr.io/linuxserver/radarr` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
Simply pulling `lscr.io/linuxserver/radarr:nightly` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
The architectures supported by this image are:
| Architecture | Tag |
| :----: | --- |
| x86-64 | amd64-latest |
| arm64 | arm64v8-latest |
| armhf | arm32v7-latest |
| Architecture | Available | Tag |
| :----: | :----: | ---- |
| x86-64 | ✅ | amd64-\<version tag\> |
| arm64 | ✅ | arm64v8-\<version tag\> |
| armhf | ❌ | |
## Version Tags
This image provides various versions that are available via tags. `latest` tag usually provides the latest stable version. Others are considered under development and caution must be exercised when using them.
This image provides various versions that are available via tags. Please read the descriptions carefully and exercise caution when using unstable or development tags.
| Tag | Description |
| :----: | --- |
| latest | Stable Radarr releases |
| develop | Radarr releases from their develop branch |
| nightly | Radarr releases from their nightly branch |
| Tag | Available | Description |
| :----: | :----: |--- |
| latest | ✅ | Stable Radarr releases |
| develop | ✅ | Radarr releases from their develop branch |
| nightly | ✅ | Nightly Radarr releases |
## Application Setup
Access the webui at `<your-ip>:7878`, for more information check out [Radarr](https://github.com/Radarr/Radarr).
**Special Note**: Following our current folder structure will result in an inability to hardlink from your downloads to your movies folder because they are on seperate volumes. To support hardlinking, ensure that the movies and downloads data are on a single volume. For example, if you have `/mnt/storage/Movies` and `/mnt/storage/downloads/completed/Movies`, you would want something like `/mnt/storage:/media` for your volume. Then you can hardlink from `/media/downloads/completed` to `/media/Movies`.
### Media folders
Another item to keep in mind, is that within Radarr itself, you should map your download client folder to your radarr folder. Navigate to **Settings -> Download Client -> Advanced Settings -> Remote Path Mappings**. Add a new mapping, and set: the Host as the same entry of the Host in your download client (for example its IP address), the Remote Path as `/downloads/Movies` (relative to the internal container path), and Local Path as `/media/downloads/completed/Movies`, assuming you have folders to separate your downloaded data types.
We have set `/movies` and `/downloads` as ***optional paths***, this is because it is the easiest way to get started. While easy to use, it has some drawbacks. Mainly losing the ability to hardlink (TL;DR a way for a file to exist in multiple places on the same file system while only consuming one file worth of space), or atomic move (TL;DR instant file moves, rather than copy+delete) files while processing content.
Use the optional paths if you dont understand, or dont want hardlinks/atomic moves.
The folks over at servarr.com wrote a good [write-up](https://wiki.servarr.com/docker-guide#consistent-and-well-planned-paths) on how to get started with this.
## Usage
Here are some example snippets to help you get started creating a container.
To help you get started creating a container from this image you can either use docker-compose or the docker cli.
### docker-compose ([recommended](https://docs.linuxserver.io/general/docker-compose))
Compatible with docker-compose v2 schemas.
### docker-compose (recommended, [click here for more info](https://docs.linuxserver.io/general/docker-compose))
```yaml
---
version: "2.1"
services:
radarr:
image: ghcr.io/linuxserver/radarr
image: lscr.io/linuxserver/radarr:nightly
container_name: radarr
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/London
- TZ=Etc/UTC
volumes:
- /path/to/data:/config
- /path/to/movies:/movies
- /path/to/downloadclient-downloads:/downloads
- /path/to/movies:/movies #optional
- /path/to/downloadclient-downloads:/downloads #optional
ports:
- 7878:7878
restart: unless-stopped
```
### docker cli
### docker cli ([click here for more info](https://docs.docker.com/engine/reference/commandline/cli/))
```bash
docker run -d \
--name=radarr \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Europe/London \
-e TZ=Etc/UTC \
-p 7878:7878 \
-v /path/to/data:/config \
-v /path/to/movies:/movies \
-v /path/to/downloadclient-downloads:/downloads \
-v /path/to/movies:/movies `#optional` \
-v /path/to/downloadclient-downloads:/downloads `#optional` \
--restart unless-stopped \
ghcr.io/linuxserver/radarr
lscr.io/linuxserver/radarr:nightly
```
## Parameters
Container images are configured using parameters passed at runtime (such as those above). These parameters are separated by a colon and indicate `<external>:<internal>` respectively. For example, `-p 8080:80` would expose port `80` from inside the container to be accessible from the host's IP on port `8080` outside the container.
Containers are configured using parameters passed at runtime (such as those above). These parameters are separated by a colon and indicate `<external>:<internal>` respectively. For example, `-p 8080:80` would expose port `80` from inside the container to be accessible from the host's IP on port `8080` outside the container.
| Parameter | Function |
| :----: | --- |
| `-p 7878` | The port for the Radarr webinterface |
| `-e PUID=1000` | for UserID - see below for explanation |
| `-e PGID=1000` | for GroupID - see below for explanation |
| `-e TZ=Europe/London` | Specify a timezone to use EG Europe/London, this is required for Radarr |
| `-e TZ=Etc/UTC` | specify a timezone to use, see this [list](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List). |
| `-v /config` | Database and Radarr configs |
| `-v /movies` | Location of Movie library on disk (See note in Application setup) |
| `-v /downloads` | Location of download managers output directory (See note in Application setup) |
@@ -140,10 +142,10 @@ You can set any environment variable from a file by using a special prepend `FIL
As an example:
```bash
-e FILE__PASSWORD=/run/secrets/mysecretpassword
-e FILE__MYVAR=/run/secrets/mysecretvariable
```
Will set the environment variable `PASSWORD` based on the contents of the `/run/secrets/mysecretpassword` file.
Will set the environment variable `MYVAR` based on the contents of the `/run/secrets/mysecretvariable` file.
## Umask for running applications
@@ -152,15 +154,20 @@ Keep in mind umask is not chmod it subtracts from permissions based on it's valu
## User / Group Identifiers
When using volumes (`-v` flags) permissions issues can arise between the host OS and the container, we avoid this issue by allowing you to specify the user `PUID` and group `PGID`.
When using volumes (`-v` flags), permissions issues can arise between the host OS and the container, we avoid this issue by allowing you to specify the user `PUID` and group `PGID`.
Ensure any volume directories on the host are owned by the same user you specify and any permissions issues will vanish like magic.
In this instance `PUID=1000` and `PGID=1000`, to find yours use `id user` as below:
In this instance `PUID=1000` and `PGID=1000`, to find yours use `id your_user` as below:
```bash
$ id username
uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)
id your_user
```
Example output:
```text
uid=1000(your_user) gid=1000(your_user) groups=1000(your_user)
```
## Docker Mods
@@ -171,12 +178,29 @@ We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to
## Support Info
* Shell access whilst the container is running: `docker exec -it radarr /bin/bash`
* To monitor the logs of the container in realtime: `docker logs -f radarr`
* container version number
* `docker inspect -f '{{ index .Config.Labels "build_version" }}' radarr`
* image version number
* `docker inspect -f '{{ index .Config.Labels "build_version" }}' ghcr.io/linuxserver/radarr`
* Shell access whilst the container is running:
```bash
docker exec -it radarr /bin/bash
```
* To monitor the logs of the container in realtime:
```bash
docker logs -f radarr
```
* Container version number:
```bash
docker inspect -f '{{ index .Config.Labels "build_version" }}' radarr
```
* Image version number:
```bash
docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/radarr:nightly
```
## Updating Info
@@ -186,38 +210,83 @@ Below are the instructions for updating containers:
### Via Docker Compose
* Update all images: `docker-compose pull`
* or update a single image: `docker-compose pull radarr`
* Let compose update all containers as necessary: `docker-compose up -d`
* or update a single container: `docker-compose up -d radarr`
* You can also remove the old dangling images: `docker image prune`
* Update images:
* All images:
```bash
docker-compose pull
```
* Single image:
```bash
docker-compose pull radarr
```
* Update containers:
* All containers:
```bash
docker-compose up -d
```
* Single container:
```bash
docker-compose up -d radarr
```
* You can also remove the old dangling images:
```bash
docker image prune
```
### Via Docker Run
* Update the image: `docker pull ghcr.io/linuxserver/radarr`
* Stop the running container: `docker stop radarr`
* Delete the container: `docker rm radarr`
* Update the image:
```bash
docker pull lscr.io/linuxserver/radarr:nightly
```
* Stop the running container:
```bash
docker stop radarr
```
* Delete the container:
```bash
docker rm radarr
```
* Recreate a new container with the same docker run parameters as instructed above (if mapped correctly to a host folder, your `/config` folder and settings will be preserved)
* You can also remove the old dangling images: `docker image prune`
* You can also remove the old dangling images:
```bash
docker image prune
```
### Via Watchtower auto-updater (only use if you don't remember the original parameters)
* Pull the latest image at its tag and replace it with the same env variables in one run:
```bash
docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower \
--run-once radarr
```
```bash
docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower \
--run-once radarr
```
* You can also remove the old dangling images: `docker image prune`
**Note:** We do not endorse the use of Watchtower as a solution to automated updates of existing Docker containers. In fact we generally discourage automated updates. However, this is a useful tool for one-time manual updates of containers where you have forgotten the original parameters. In the long term, we highly recommend using [Docker Compose](https://docs.linuxserver.io/general/docker-compose).
**warning**: We do not endorse the use of Watchtower as a solution to automated updates of existing Docker containers. In fact we generally discourage automated updates. However, this is a useful tool for one-time manual updates of containers where you have forgotten the original parameters. In the long term, we highly recommend using [Docker Compose](https://docs.linuxserver.io/general/docker-compose).
### Image Update Notifications - Diun (Docker Image Update Notifier)
* We recommend [Diun](https://crazymax.dev/diun/) for update notifications. Other tools that automatically update containers unattended are not recommended or supported.
**tip**: We recommend [Diun](https://crazymax.dev/diun/) for update notifications. Other tools that automatically update containers unattended are not recommended or supported.
## Building locally
@@ -229,7 +298,7 @@ cd docker-radarr
docker build \
--no-cache \
--pull \
-t ghcr.io/linuxserver/radarr:latest .
-t lscr.io/linuxserver/radarr:nightly .
```
The ARM variants can be built on x86_64 hardware using `multiarch/qemu-user-static`
@@ -242,9 +311,15 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions
* **06.06.23:** - Rebase nightly to Alpine 3.18.
* **19.12.22:** - Rebase nightly to Alpine 3.17.
* **27.10.22:** - Rebase nightly to Alpine 3.16, migrate to s6v3.
* **04.02.22:** - Rebase nightly branch to Alpine.
* **13.12.21:** - Remove unused dependencies.
* **17.10.21:** - Remove `UMASK_SET`.
* **11.07.21:** - Make the paths clearer to the user
* **17.01.21:** - Deprecate `UMASK_SET` in favor of UMASK in baseimage, see above for more information.
* **11.30.20:** - Publish `develop` tag.
* **11.28.20:** - Switch to v3 .NET CORE builds (no more mono, `5.14` tag is deprecated). Rebase to Focal (for issues on arm32v7, [see here](https://docs.linuxserver.io/faq#my-host-is-incompatible-with-images-based-on-ubuntu-focal)).
* **09.27.20:** - Merge Preview into Nightly.
* **05.04.20:** - Move app to /app.
* **01.08.19:** - Rebase to Linuxserver LTS mono version.
* **13.06.19:** - Add env variable for setting umask.
+7 -6
View File
@@ -3,10 +3,11 @@
# jenkins variables
project_name: docker-radarr
external_type: na
custom_version_command: curl -sL https://radarr.servarr.com/v1/update/develop/changes?os=linux | jq -r '.[0].version'
custom_version_command: curl -sL https://radarr.servarr.com/v1/update/nightly/changes?runtime=netcore%26os=linux | jq -r '.[0].version'
release_type: prerelease
release_tag: develop
ls_branch: develop
release_tag: nightly
ls_branch: nightly
build_armhf: false
repo_vars:
- BUILD_VERSION_ARG = 'RADARR_RELEASE'
- LS_USER = 'linuxserver'
@@ -15,15 +16,15 @@ repo_vars:
- DOCKERHUB_IMAGE = 'linuxserver/radarr'
- DEV_DOCKERHUB_IMAGE = 'lsiodev/radarr'
- PR_DOCKERHUB_IMAGE = 'lspipepr/radarr'
- DIST_IMAGE = 'ubuntu'
- DIST_IMAGE = 'alpine'
- MULTIARCH='true'
- CI='true'
- CI_WEB='true'
- CI_PORT='7878'
- CI_SSL='false'
- CI_DELAY='120'
- CI_DOCKERENV='TZ=US/Pacific'
- CI_DOCKERENV='TZ=Europe/London'
- CI_AUTH='user:password'
- CI_WEBPATH=''
- CI_WEBPATH='/system/status'
sponsor_links:
- { name: "Radarr", url: "https://opencollective.com/radarr" }
+426 -153
View File
@@ -1,153 +1,426 @@
adduser3.118ubuntu2
apt2.0.5
apt-utils2.0.5
base-files11ubuntu5.3
base-passwd3.5.47
bash5.0-6ubuntu1.1
bsdutils1:2.34-0.1ubuntu9.1
bzip21.0.8-2
ca-certificates20210119~20.04.1
coreutils8.30-3ubuntu2
curl7.68.0-1ubuntu2.5
dash0.5.10.2-6
debconf1.5.73
debianutils4.9.1
diffutils1:3.7-3
dirmngr2.2.19-3ubuntu2.1
dpkg1.19.7ubuntu3
e2fsprogs1.45.5-2ubuntu1
fdisk2.34-0.1ubuntu9.1
findutils4.7.0-1ubuntu1
gcc-10-base10.2.0-5ubuntu1~20.04
gnupg2.2.19-3ubuntu2.1
gnupg-l10n2.2.19-3ubuntu2.1
gnupg-utils2.2.19-3ubuntu2.1
gpg2.2.19-3ubuntu2.1
gpg-agent2.2.19-3ubuntu2.1
gpgconf2.2.19-3ubuntu2.1
gpgsm2.2.19-3ubuntu2.1
gpgv2.2.19-3ubuntu2.1
gpg-wks-client2.2.19-3ubuntu2.1
gpg-wks-server2.2.19-3ubuntu2.1
grep3.4-1
gzip1.10-0ubuntu4
hostname3.23
init-system-helpers1.57
jq1.6-1ubuntu0.20.04.1
krb5-locales1.17-6ubuntu4.1
libacl12.2.53-6
libapt-pkg6.02.0.5
libasn1-8-heimdal7.7.0+dfsg-1ubuntu1
libassuan02.5.3-7ubuntu2
libattr11:2.4.48-5
libaudit11:2.8.5-2ubuntu6
libaudit-common1:2.8.5-2ubuntu6
libblkid12.34-0.1ubuntu9.1
libbrotli11.0.7-6ubuntu0.1
libbz2-1.01.0.8-2
libc62.31-0ubuntu9.2
libcap-ng00.7.9-2.1build1
libc-bin2.31-0ubuntu9.2
libcom-err21.45.5-2ubuntu1
libcrypt11:4.4.10-10ubuntu4
libcurl3-gnutls7.68.0-1ubuntu2.5
libcurl47.68.0-1ubuntu2.5
libdb5.35.3.28+dfsg1-0.6ubuntu2
libdebconfclient00.251ubuntu1
libext2fs21.45.5-2ubuntu1
libfdisk12.34-0.1ubuntu9.1
libffi73.3-4
libgcc-s110.2.0-5ubuntu1~20.04
libgcrypt201.8.5-5ubuntu1
libgmp102:6.2.0+dfsg-4
libgnutls303.6.13-2ubuntu1.3
libgpg-error01.37-1
libgssapi3-heimdal7.7.0+dfsg-1ubuntu1
libgssapi-krb5-21.17-6ubuntu4.1
libhcrypto4-heimdal7.7.0+dfsg-1ubuntu1
libheimbase1-heimdal7.7.0+dfsg-1ubuntu1
libheimntlm0-heimdal7.7.0+dfsg-1ubuntu1
libhogweed53.5.1+really3.5.1-2ubuntu0.1
libhx509-5-heimdal7.7.0+dfsg-1ubuntu1
libicu6666.1-2ubuntu2
libidn2-02.2.0-2
libjq11.6-1ubuntu0.20.04.1
libk5crypto31.17-6ubuntu4.1
libkeyutils11.6-6ubuntu1
libkrb5-26-heimdal7.7.0+dfsg-1ubuntu1
libkrb5-31.17-6ubuntu4.1
libkrb5support01.17-6ubuntu4.1
libksba81.3.5-2
libldap-2.4-22.4.49+dfsg-2ubuntu1.8
libldap-common2.4.49+dfsg-2ubuntu1.8
liblz4-11.9.2-2ubuntu0.20.04.1
liblzma55.2.4-1ubuntu1
libmediainfo0v519.09+dfsg-2build1
libmms00.6.4-3
libmount12.34-0.1ubuntu9.1
libncurses66.2-0ubuntu2
libncursesw66.2-0ubuntu2
libnettle73.5.1+really3.5.1-2ubuntu0.1
libnghttp2-141.40.0-1build1
libnpth01.6-1
libonig56.9.4-1
libp11-kit00.23.20-1ubuntu0.1
libpam0g1.3.1-5ubuntu4.2
libpam-modules1.3.1-5ubuntu4.2
libpam-modules-bin1.3.1-5ubuntu4.2
libpam-runtime1.3.1-5ubuntu4.2
libpcre2-8-010.34-7
libpcre32:8.39-12build1
libprocps82:3.3.16-1ubuntu2.1
libpsl50.21.0-1ubuntu1
libreadline88.0-4
libroken18-heimdal7.7.0+dfsg-1ubuntu1
librtmp12.4+20151223.gitfa8646d.1-2build1
libsasl2-22.1.27+dfsg-2
libsasl2-modules2.1.27+dfsg-2
libsasl2-modules-db2.1.27+dfsg-2
libseccomp22.5.1-1ubuntu1~20.04.1
libselinux13.0-1build2
libsemanage13.0-1build2
libsemanage-common3.0-1build2
libsepol13.0-1
libsmartcols12.34-0.1ubuntu9.1
libsqlite3-03.31.1-4ubuntu0.2
libss21.45.5-2ubuntu1
libssh-40.9.3-2ubuntu2.1
libssl1.11.1.1f-1ubuntu2.4
libstdc++610.2.0-5ubuntu1~20.04
libsystemd0245.4-4ubuntu3.6
libtasn1-64.16.0-2
libtinfo66.2-0ubuntu2
libtinyxml2-6a7.0.0+dfsg-1build1
libudev1245.4-4ubuntu3.6
libunistring20.9.10-2
libuuid12.34-0.1ubuntu9.1
libwind0-heimdal7.7.0+dfsg-1ubuntu1
libzen0v50.4.37-1build1
libzstd11.4.4+dfsg-3ubuntu0.1
locales2.31-0ubuntu9.2
login1:4.8.1-1ubuntu5.20.04
logsave1.45.5-2ubuntu1
lsb-base11.1.0ubuntu2
mawk1.3.4.20200120-2
mount2.34-0.1ubuntu9.1
ncurses-base6.2-0ubuntu2
ncurses-bin6.2-0ubuntu2
openssl1.1.1f-1ubuntu2.4
passwd1:4.8.1-1ubuntu5.20.04
perl-base5.30.0-9ubuntu0.2
pinentry-curses1.1.0-3build1
procps2:3.3.16-1ubuntu2.1
publicsuffix20200303.0012-1
readline-common8.0-4
sed4.7-1
sensible-utils0.0.12+nmu1
sqlite33.31.1-4ubuntu0.2
sysvinit-utils2.96-2.1ubuntu1
tar1.30+dfsg-7ubuntu0.20.04.1
tzdata2021a-0ubuntu0.20.04
ubuntu-keyring2020.02.11.4
util-linux2.34-0.1ubuntu9.1
zlib1g1:1.2.11.dfsg-2ubuntu1.2
NAME VERSION TYPE
BouncyCastle.Crypto 1.9.0.1 dotnet
Dapper 2.0.143.55328 dotnet
Diacritical 1.0.4.0 dotnet
DryIoc.Microsoft.DependencyInjectionnet6.0 6.2.0.0 dotnet
DryIocnet6.0 5.4.1.0 dotnet
Dynamitey 2.0.9.136 dotnet
Equ 2.3.0 dotnet
FFMpegCore 4.0.0.0 dotnet
FluentMigrator 3.3.2.9 dotnet
FluentMigrator.Abstractions 3.3.2.9 dotnet
FluentMigrator.Extensions.Oracle 3.3.2.9 dotnet
FluentMigrator.Extensions.Postgres 3.3.2.9 dotnet
FluentMigrator.Extensions.SqlAnywhere 3.3.2.9 dotnet
FluentMigrator.Extensions.SqlServer 3.3.2.9 dotnet
FluentMigrator.Runner 3.3.2.9 dotnet
FluentMigrator.Runner.Core 3.3.2.9 dotnet
FluentMigrator.Runner.Db2 3.3.2.9 dotnet
FluentMigrator.Runner.Firebird 3.3.2.9 dotnet
FluentMigrator.Runner.Hana 3.3.2.9 dotnet
FluentMigrator.Runner.MySql 3.3.2.9 dotnet
FluentMigrator.Runner.Oracle 3.3.2.9 dotnet
FluentMigrator.Runner.Postgres 3.3.2.9 dotnet
FluentMigrator.Runner.Redshift 3.3.2.9 dotnet
FluentMigrator.Runner.SQLite 3.3.2.9 dotnet
FluentMigrator.Runner.SqlAnywhere 3.3.2.9 dotnet
FluentMigrator.Runner.SqlServer 3.3.2.9 dotnet
FluentMigrator.Runner.SqlServerCe 3.3.2.9 dotnet
FluentValidation 9.5.4.0 dotnet
ICSharpCode.SharpZipLib 1.3.3.11 dotnet
Ical.Net 1.0.0.0 dotnet
ImpromptuInterface 7.0.1.0 dotnet
Instances 1.0.0.0 dotnet
Json.NET.NET6.0 13.0.3.27908 dotnet
MailKit 3.6.0.0 dotnet
Microsoft.AspNetCore 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Antiforgery 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Authentication 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Authentication.Abstractions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Authentication.Cookies 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Authentication.Core 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Authentication.OAuth 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Authorization 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Authorization.Policy 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Components 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Components.Authorization 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Components.Forms 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Components.Server 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Components.Web 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Connections.Abstractions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.CookiePolicy 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Cors 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Cryptography.Internal 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Cryptography.KeyDerivation 6.0.2123.36438 dotnet
Microsoft.AspNetCore.DataProtection 6.0.2123.36438 dotnet
Microsoft.AspNetCore.DataProtection.Abstractions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.DataProtection.Extensions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Diagnostics 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Diagnostics.Abstractions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Diagnostics.HealthChecks 6.0.2123.36438 dotnet
Microsoft.AspNetCore.HostFiltering 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Hosting 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Hosting.Abstractions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Hosting.Server.Abstractions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Html.Abstractions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Http 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Http.Abstractions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Http.Connections 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Http.Connections.Common 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Http.Extensions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Http.Features 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Http.Results 6.0.2123.36438 dotnet
Microsoft.AspNetCore.HttpLogging 6.0.2123.36438 dotnet
Microsoft.AspNetCore.HttpOverrides 6.0.2123.36438 dotnet
Microsoft.AspNetCore.HttpsPolicy 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Identity 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Localization 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Localization.Routing 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Metadata 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.Abstractions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.ApiExplorer 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.Core 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.Cors 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.DataAnnotations 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.Formatters.Json 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.Formatters.Xml 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.Localization 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.Razor 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.RazorPages 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.TagHelpers 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Mvc.ViewFeatures 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Razor 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Razor.Runtime 6.0.2123.36438 dotnet
Microsoft.AspNetCore.ResponseCaching 6.0.2123.36438 dotnet
Microsoft.AspNetCore.ResponseCaching.Abstractions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.ResponseCompression 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Rewrite 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Routing 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Routing.Abstractions 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Server.HttpSys 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Server.IIS 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Server.IISIntegration 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Server.Kestrel 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Server.Kestrel.Core 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Server.Kestrel.Transport.Quic 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets 6.0.2123.36438 dotnet
Microsoft.AspNetCore.Session 6.0.2123.36438 dotnet
Microsoft.AspNetCore.SignalR 6.0.2123.36438 dotnet
Microsoft.AspNetCore.SignalR.Common 6.0.2123.36438 dotnet
Microsoft.AspNetCore.SignalR.Core 6.0.2123.36438 dotnet
Microsoft.AspNetCore.SignalR.Protocols.Json 6.0.2123.36438 dotnet
Microsoft.AspNetCore.StaticFiles 6.0.2123.36438 dotnet
Microsoft.AspNetCore.WebSockets 6.0.2123.36438 dotnet
Microsoft.AspNetCore.WebUtilities 6.0.2123.36438 dotnet
Microsoft.CSharp 6.0.2123.36311 dotnet
Microsoft.Data.SqlClient 2.0.20168.4 dotnet
Microsoft.Extensions.Caching.Abstractions 6.0.21.52210 dotnet
Microsoft.Extensions.Caching.Memory 6.0.222.6406 dotnet
Microsoft.Extensions.Configuration 6.0.322.12309 dotnet
Microsoft.Extensions.Configuration.Abstractions 6.0.21.52210 dotnet
Microsoft.Extensions.Configuration.Binder 6.0.21.52210 dotnet
Microsoft.Extensions.Configuration.CommandLine 6.0.21.52210 dotnet
Microsoft.Extensions.Configuration.EnvironmentVariables 6.0.222.6406 dotnet
Microsoft.Extensions.Configuration.FileExtensions 6.0.21.52210 dotnet
Microsoft.Extensions.Configuration.Ini 6.0.21.52210 dotnet
Microsoft.Extensions.Configuration.Json 6.0.21.52210 dotnet
Microsoft.Extensions.Configuration.KeyPerFile 6.0.2123.36438 dotnet
Microsoft.Extensions.Configuration.UserSecrets 6.0.222.6406 dotnet
Microsoft.Extensions.Configuration.Xml 6.0.21.52210 dotnet
Microsoft.Extensions.DependencyInjection 6.0.1022.47605 dotnet
Microsoft.Extensions.DependencyInjection.Abstractions 7.0.22.51805 dotnet
Microsoft.Extensions.Diagnostics.HealthChecks 6.0.2123.36438 dotnet
Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions 6.0.2123.36438 dotnet
Microsoft.Extensions.Features 6.0.2123.36438 dotnet
Microsoft.Extensions.FileProviders.Abstractions 6.0.21.52210 dotnet
Microsoft.Extensions.FileProviders.Composite 6.0.21.52210 dotnet
Microsoft.Extensions.FileProviders.Embedded 6.0.2123.36438 dotnet
Microsoft.Extensions.FileProviders.Physical 6.0.21.52210 dotnet
Microsoft.Extensions.FileSystemGlobbing 6.0.21.52210 dotnet
Microsoft.Extensions.Hosting 6.0.222.6406 dotnet
Microsoft.Extensions.Hosting.Abstractions 6.0.21.52210 dotnet
Microsoft.Extensions.Hosting.WindowsServices 6.0.1823.26907 dotnet
Microsoft.Extensions.Http 6.0.21.52210 dotnet
Microsoft.Extensions.Identity.Core 6.0.2123.36438 dotnet
Microsoft.Extensions.Identity.Stores 6.0.2123.36438 dotnet
Microsoft.Extensions.Localization 6.0.2123.36438 dotnet
Microsoft.Extensions.Localization.Abstractions 6.0.2123.36438 dotnet
Microsoft.Extensions.Logging 6.0.21.52210 dotnet
Microsoft.Extensions.Logging.Abstractions 6.0.1823.26907 dotnet
Microsoft.Extensions.Logging.Configuration 6.0.21.52210 dotnet
Microsoft.Extensions.Logging.Console 6.0.21.52210 dotnet
Microsoft.Extensions.Logging.Debug 6.0.21.52210 dotnet
Microsoft.Extensions.Logging.EventLog 6.0.21.52210 dotnet
Microsoft.Extensions.Logging.EventSource 6.0.21.52210 dotnet
Microsoft.Extensions.Logging.TraceSource 6.0.21.52210 dotnet
Microsoft.Extensions.ObjectPool 6.0.2123.36438 dotnet
Microsoft.Extensions.Options 6.0.21.52210 dotnet
Microsoft.Extensions.Options.ConfigurationExtensions 6.0.21.52210 dotnet
Microsoft.Extensions.Options.DataAnnotations 6.0.21.52210 dotnet
Microsoft.Extensions.Primitives 6.0.21.52210 dotnet
Microsoft.Extensions.WebEncoders 6.0.2123.36438 dotnet
Microsoft.Identity.Client 4.21.1.0 dotnet
Microsoft.IdentityModel.JsonWebTokens 6.8.0.11012 dotnet
Microsoft.IdentityModel.Logging 6.8.0.11012 dotnet
Microsoft.IdentityModel.Protocols 6.8.0.11012 dotnet
Microsoft.IdentityModel.Protocols.OpenIdConnect 6.8.0.11012 dotnet
Microsoft.IdentityModel.Tokens 6.8.0.11012 dotnet
Microsoft.JSInterop 6.0.2123.36438 dotnet
Microsoft.Net.Http.Headers 6.0.2123.36438 dotnet
Microsoft.OpenApi 1.2.3.0 dotnet
Microsoft.VisualBasic 6.0.2123.36311 dotnet
Microsoft.VisualBasic.Core 11.100.2123.36311 dotnet
Microsoft.Win32.Primitives 6.0.2123.36311 dotnet
Microsoft.Win32.Registry 6.0.2123.36311 dotnet
Microsoft.Win32.SystemEvents 6.0.21.52210 dotnet
MimeKit 3.6.0.0 dotnet
Mono.Nat 3.0.1 dotnet
Mono.Posix.NETStandard.dll 1.0.0.0 dotnet
MonoTorrent 2.0.7 dotnet
NLog.Extensions.Loggingfor.NET6 5.3.3.381 dotnet
NLogSyslogtarget 7.0.0.0 dotnet
NLogforNetStandard2.0 5.2.3.1999 dotnet
NodaTime 3.0.0.0 dotnet
Npgsql 7.0.4.0 dotnet
Polly.Contrib.WaitAndRetry 1.1.1.0 dotnet
Radarr 5.2.3.8299 dotnet
Radarr.Api.V3 5.2.3.8299 dotnet
Radarr.Common 5.2.3.8299 dotnet
Radarr.Core 5.2.3.8299 dotnet
Radarr.Host 5.2.3.8299 dotnet
Radarr.Http 5.2.3.8299 dotnet
Radarr.Mono 5.2.3.8299 dotnet
Radarr.SignalR 5.2.3.8299 dotnet
ReusableTasks 2.0.0 dotnet
Sentry 3.23.1.0 dotnet
SixLabors.ImageSharp 3.0.2.0 dotnet
Swashbuckle.AspNetCore.Swagger 6.5.0.0 dotnet
Swashbuckle.AspNetCore.SwaggerGen 6.5.0.0 dotnet
System 6.0.2123.36311 dotnet
System.AppContext 6.0.2123.36311 dotnet
System.Buffers 6.0.2123.36311 dotnet
System.Collections 6.0.2123.36311 dotnet
System.Collections.Concurrent 6.0.2123.36311 dotnet
System.Collections.Immutable 6.0.2123.36311 dotnet
System.Collections.NonGeneric 6.0.2123.36311 dotnet
System.Collections.Specialized 6.0.2123.36311 dotnet
System.ComponentModel 6.0.2123.36311 dotnet
System.ComponentModel.Annotations 6.0.2123.36311 dotnet
System.ComponentModel.DataAnnotations 6.0.2123.36311 dotnet
System.ComponentModel.EventBasedAsync 6.0.2123.36311 dotnet
System.ComponentModel.Primitives 6.0.2123.36311 dotnet
System.ComponentModel.TypeConverter 6.0.2123.36311 dotnet
System.Configuration 6.0.2123.36311 dotnet
System.Configuration.ConfigurationManager 6.0.922.41905 dotnet
System.Console 6.0.2123.36311 dotnet
System.Core 6.0.2123.36311 dotnet
System.Data 6.0.2123.36311 dotnet
System.Data.Common 6.0.2123.36311 dotnet
System.Data.DataSetExtensions 6.0.2123.36311 dotnet
System.Data.SQLiteCore 1.0.115.5 dotnet
System.Data.SqlServerCe 4.0.8876.1 dotnet
System.Diagnostics.Contracts 6.0.2123.36311 dotnet
System.Diagnostics.Debug 6.0.2123.36311 dotnet
System.Diagnostics.DiagnosticSource 6.0.2123.36311 dotnet
System.Diagnostics.EventLog 6.0.21.52210 dotnet
System.Diagnostics.FileVersionInfo 6.0.2123.36311 dotnet
System.Diagnostics.Process 6.0.2123.36311 dotnet
System.Diagnostics.StackTrace 6.0.2123.36311 dotnet
System.Diagnostics.TextWriterTraceListener 6.0.2123.36311 dotnet
System.Diagnostics.Tools 6.0.2123.36311 dotnet
System.Diagnostics.TraceSource 6.0.2123.36311 dotnet
System.Diagnostics.Tracing 6.0.2123.36311 dotnet
System.Drawing 6.0.2123.36311 dotnet
System.Drawing.Common 6.0.21.52210 dotnet
System.Drawing.Primitives 6.0.2123.36311 dotnet
System.Dynamic.Runtime 6.0.2123.36311 dotnet
System.Formats.Asn1 6.0.2123.36311 dotnet
System.Globalization 6.0.2123.36311 dotnet
System.Globalization.Calendars 6.0.2123.36311 dotnet
System.Globalization.Extensions 6.0.2123.36311 dotnet
System.IO 6.0.2123.36311 dotnet
System.IO.Compression 6.0.2123.36311 dotnet
System.IO.Compression.Brotli 6.0.2123.36311 dotnet
System.IO.Compression.FileSystem 6.0.2123.36311 dotnet
System.IO.Compression.ZipFile 6.0.2123.36311 dotnet
System.IO.FileSystem 6.0.2123.36311 dotnet
System.IO.FileSystem.AccessControl 6.0.2123.36311 dotnet
System.IO.FileSystem.DriveInfo 6.0.2123.36311 dotnet
System.IO.FileSystem.Primitives 6.0.2123.36311 dotnet
System.IO.FileSystem.Watcher 6.0.2123.36311 dotnet
System.IO.IsolatedStorage 6.0.2123.36311 dotnet
System.IO.MemoryMappedFiles 6.0.2123.36311 dotnet
System.IO.Pipelines 6.0.522.21309 dotnet
System.IO.Pipes 6.0.2123.36311 dotnet
System.IO.Pipes.AccessControl 6.0.2123.36311 dotnet
System.IO.UnmanagedMemoryStream 6.0.2123.36311 dotnet
System.IdentityModel.Tokens.Jwt 6.8.0.11012 dotnet
System.Linq 6.0.2123.36311 dotnet
System.Linq.Expressions 6.0.2123.36311 dotnet
System.Linq.Parallel 6.0.2123.36311 dotnet
System.Linq.Queryable 6.0.2123.36311 dotnet
System.Memory 6.0.2123.36311 dotnet
System.Net 6.0.2123.36311 dotnet
System.Net.Http 6.0.2123.36311 dotnet
System.Net.Http.Json 6.0.2123.36311 dotnet
System.Net.HttpListener 6.0.2123.36311 dotnet
System.Net.Mail 6.0.2123.36311 dotnet
System.Net.NameResolution 6.0.2123.36311 dotnet
System.Net.NetworkInformation 6.0.2123.36311 dotnet
System.Net.Ping 6.0.2123.36311 dotnet
System.Net.Primitives 6.0.2123.36311 dotnet
System.Net.Quic 6.0.2123.36311 dotnet
System.Net.Requests 6.0.2123.36311 dotnet
System.Net.Security 6.0.2123.36311 dotnet
System.Net.ServicePoint 6.0.2123.36311 dotnet
System.Net.Sockets 6.0.2123.36311 dotnet
System.Net.WebClient 6.0.2123.36311 dotnet
System.Net.WebHeaderCollection 6.0.2123.36311 dotnet
System.Net.WebProxy 6.0.2123.36311 dotnet
System.Net.WebSockets 6.0.2123.36311 dotnet
System.Net.WebSockets.Client 6.0.2123.36311 dotnet
System.Numerics 6.0.2123.36311 dotnet
System.Numerics.Vectors 6.0.2123.36311 dotnet
System.ObjectModel 6.0.2123.36311 dotnet
System.Private.CoreLib 6.0.2123.36311 dotnet
System.Private.DataContractSerialization 6.0.2123.36311 dotnet
System.Private.Uri 6.0.2123.36311 dotnet
System.Private.Xml 6.0.2123.36311 dotnet
System.Private.Xml.Linq 6.0.2123.36311 dotnet
System.Reflection 6.0.2123.36311 dotnet
System.Reflection.DispatchProxy 6.0.2123.36311 dotnet
System.Reflection.Emit 6.0.2123.36311 dotnet
System.Reflection.Emit.ILGeneration 6.0.2123.36311 dotnet
System.Reflection.Emit.Lightweight 6.0.2123.36311 dotnet
System.Reflection.Extensions 6.0.2123.36311 dotnet
System.Reflection.Metadata 6.0.2123.36311 dotnet
System.Reflection.Primitives 6.0.2123.36311 dotnet
System.Reflection.TypeExtensions 6.0.2123.36311 dotnet
System.Resources.Reader 6.0.2123.36311 dotnet
System.Resources.ResourceManager 6.0.2123.36311 dotnet
System.Resources.Writer 6.0.2123.36311 dotnet
System.Runtime 6.0.2123.36311 dotnet
System.Runtime.Caching 4.700.19.56404 dotnet
System.Runtime.CompilerServices.VisualC 6.0.2123.36311 dotnet
System.Runtime.Extensions 6.0.2123.36311 dotnet
System.Runtime.Handles 6.0.2123.36311 dotnet
System.Runtime.InteropServices 6.0.2123.36311 dotnet
System.Runtime.InteropServices.RuntimeInformation 6.0.2123.36311 dotnet
System.Runtime.Intrinsics 6.0.2123.36311 dotnet
System.Runtime.Loader 6.0.2123.36311 dotnet
System.Runtime.Numerics 6.0.2123.36311 dotnet
System.Runtime.Serialization 6.0.2123.36311 dotnet
System.Runtime.Serialization.Formatters 6.0.2123.36311 dotnet
System.Runtime.Serialization.Json 6.0.2123.36311 dotnet
System.Runtime.Serialization.Primitives 6.0.2123.36311 dotnet
System.Runtime.Serialization.Xml 6.0.2123.36311 dotnet
System.Security 6.0.2123.36311 dotnet
System.Security.AccessControl 6.0.2123.36311 dotnet
System.Security.Claims 6.0.2123.36311 dotnet
System.Security.Cryptography.Algorithms 6.0.2123.36311 dotnet
System.Security.Cryptography.Cng 6.0.2123.36311 dotnet
System.Security.Cryptography.Csp 6.0.2123.36311 dotnet
System.Security.Cryptography.Encoding 6.0.2123.36311 dotnet
System.Security.Cryptography.OpenSsl 6.0.2123.36311 dotnet
System.Security.Cryptography.Pkcs 6.0.1823.26907 dotnet
System.Security.Cryptography.Primitives 6.0.2123.36311 dotnet
System.Security.Cryptography.ProtectedData 6.0.21.52210 dotnet
System.Security.Cryptography.X509Certificates 6.0.2123.36311 dotnet
System.Security.Cryptography.Xml 6.0.822.36306 dotnet
System.Security.Permissions 6.0.21.52210 dotnet
System.Security.Principal 6.0.2123.36311 dotnet
System.Security.Principal.Windows 6.0.2123.36311 dotnet
System.Security.SecureString 6.0.2123.36311 dotnet
System.ServiceModel.Web 6.0.2123.36311 dotnet
System.ServiceProcess 6.0.2123.36311 dotnet
System.ServiceProcess.ServiceController 6.0.1823.26907 dotnet
System.Text.Encoding 6.0.2123.36311 dotnet
System.Text.Encoding.CodePages 6.0.2123.36311 dotnet
System.Text.Encoding.Extensions 6.0.2123.36311 dotnet
System.Text.Encodings.Web 6.0.2123.36311 dotnet
System.Text.Json 6.0.2123.36311 dotnet
System.Text.RegularExpressions 6.0.2123.36311 dotnet
System.Threading 6.0.2123.36311 dotnet
System.Threading.Channels 6.0.2123.36311 dotnet
System.Threading.Overlapped 6.0.2123.36311 dotnet
System.Threading.Tasks 6.0.2123.36311 dotnet
System.Threading.Tasks.Dataflow 6.0.2123.36311 dotnet
System.Threading.Tasks.Extensions 6.0.2123.36311 dotnet
System.Threading.Tasks.Parallel 6.0.2123.36311 dotnet
System.Threading.Thread 6.0.2123.36311 dotnet
System.Threading.ThreadPool 6.0.2123.36311 dotnet
System.Threading.Timer 6.0.2123.36311 dotnet
System.Transactions 6.0.2123.36311 dotnet
System.Transactions.Local 6.0.2123.36311 dotnet
System.ValueTuple 6.0.2123.36311 dotnet
System.Web 6.0.2123.36311 dotnet
System.Web.HttpUtility 6.0.2123.36311 dotnet
System.Windows 6.0.2123.36311 dotnet
System.Windows.Extensions 6.0.21.52210 dotnet
System.Xml 6.0.2123.36311 dotnet
System.Xml.Linq 6.0.2123.36311 dotnet
System.Xml.ReaderWriter 6.0.2123.36311 dotnet
System.Xml.Serialization 6.0.2123.36311 dotnet
System.Xml.XDocument 6.0.2123.36311 dotnet
System.Xml.XPath 6.0.2123.36311 dotnet
System.Xml.XPath.XDocument 6.0.2123.36311 dotnet
System.Xml.XmlDocument 6.0.2123.36311 dotnet
System.Xml.XmlSerializer 6.0.2123.36311 dotnet
WindowsBase 6.0.2123.36311 dotnet
alpine-baselayout 3.4.3-r1 apk
alpine-baselayout-data 3.4.3-r1 apk
alpine-keys 2.4-r1 apk
alpine-release 3.18.4-r0 apk
apk-tools 2.14.0-r2 apk
bash 5.2.15-r5 apk
brotli-libs 1.0.9-r14 apk
busybox 1.36.1-r5 apk
busybox-binsh 1.36.1-r5 apk
ca-certificates 20230506-r0 apk
ca-certificates-bundle 20230506-r0 apk
coreutils 9.3-r1 apk
curl 8.4.0-r0 apk
icu-data-en 73.2-r2 apk
icu-libs 73.2-r2 apk
jq 1.6-r3 apk
libacl 2.3.1-r3 apk
libattr 2.5.1-r4 apk
libbsd 0.11.7-r1 apk
libc-utils 0.7.2-r5 apk
libcrypto3 3.1.4-r1 apk
libcurl 8.4.0-r0 apk
libgcc 12.2.1_git20220924-r10 apk
libgcrypt 1.10.2-r1 apk
libgpg-error 1.47-r1 apk
libidn2 2.3.4-r1 apk
libintl 0.21.1-r7 apk
libmd 1.0.4-r2 apk
libncursesw 6.4_p20230506-r0 apk
libproc2 4.0.4-r0 apk
libssl3 3.1.4-r1 apk
libstdc++ 12.2.1_git20220924-r10 apk
libunistring 1.1-r1 apk
libxml2 2.11.6-r0 apk
libxslt 1.1.38-r0 apk
linux-pam 1.5.2-r10 apk
mscorlib 6.0.2123.36311 dotnet
musl 1.2.4-r2 apk
musl-utils 1.2.4-r2 apk
ncurses-terminfo-base 6.4_p20230506-r0 apk
netcat-openbsd 1.219-r1 apk
netstandard 6.0.2123.36311 dotnet
nghttp2-libs 1.57.0-r0 apk
oniguruma 6.9.8-r1 apk
procps-ng 4.0.4-r0 apk
readline 8.2.1-r1 apk
scanelf 1.3.7-r1 apk
shadow 4.13-r4 apk
skalibs 2.13.1.1-r1 apk
sqlite-libs 3.41.2-r2 apk
ssl_client 1.36.1-r5 apk
tzdata 2023c-r1 apk
utmps-libs 0.1.2.1-r1 apk
xmlstarlet 1.6.1-r2 apk
xz-libs 5.4.3-r0 apk
zlib 1.2.13-r1 apk
+19 -7
View File
@@ -3,7 +3,7 @@
# project information
project_name: radarr
project_url: "https://github.com/Radarr/Radarr"
project_logo: "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/radarr.png"
project_logo: "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/radarr_alpha.png"
project_blurb: |
[{{ project_name|capitalize }}]({{ project_url }}) - A fork of Sonarr to work with movies à la Couchpotato.
project_lsio_github_repo_url: "https://github.com/linuxserver/docker-{{ project_name }}"
@@ -12,20 +12,22 @@ project_lsio_github_repo_url: "https://github.com/linuxserver/docker-{{ project_
available_architectures:
- { arch: "{{ arch_x86_64 }}", tag: "amd64-latest"}
- { arch: "{{ arch_arm64 }}", tag: "arm64v8-latest"}
- { arch: "{{ arch_armhf }}", tag: "arm32v7-latest"}
# development version
development_versions: true
development_versions_items:
- { tag: "latest", desc: "Stable Radarr releases" }
- { tag: "develop", desc: "Radarr releases from their develop branch" }
- { tag: "nightly", desc: "Radarr releases from their nightly branch" }
- { tag: "nightly", desc: "Nightly Radarr releases" }
# container parameters
param_container_name: "{{ project_name }}"
param_usage_include_vols: true
param_volumes:
- { vol_path: "/config", vol_host_path: "/path/to/data", desc: "Database and Radarr configs" }
opt_param_usage_include_vols: true
opt_param_volumes:
- { vol_path: "/movies", vol_host_path: "/path/to/movies", desc: "Location of Movie library on disk (See note in Application setup)" }
- { vol_path: "/downloads", vol_host_path: "/path/to/downloadclient-downloads", desc: "Location of download managers output directory (See note in Application setup)" }
@@ -43,15 +45,25 @@ app_setup_block_enabled: true
app_setup_block: |
Access the webui at `<your-ip>:7878`, for more information check out [Radarr](https://github.com/Radarr/Radarr).
**Special Note**: Following our current folder structure will result in an inability to hardlink from your downloads to your movies folder because they are on seperate volumes. To support hardlinking, ensure that the movies and downloads data are on a single volume. For example, if you have `/mnt/storage/Movies` and `/mnt/storage/downloads/completed/Movies`, you would want something like `/mnt/storage:/media` for your volume. Then you can hardlink from `/media/downloads/completed` to `/media/Movies`.
### Media folders
Another item to keep in mind, is that within Radarr itself, you should map your download client folder to your radarr folder. Navigate to **Settings -> Download Client -> Advanced Settings -> Remote Path Mappings**. Add a new mapping, and set: the Host as the same entry of the Host in your download client (for example its IP address), the Remote Path as `/downloads/Movies` (relative to the internal container path), and Local Path as `/media/downloads/completed/Movies`, assuming you have folders to separate your downloaded data types.
We have set `/movies` and `/downloads` as ***optional paths***, this is because it is the easiest way to get started. While easy to use, it has some drawbacks. Mainly losing the ability to hardlink (TL;DR a way for a file to exist in multiple places on the same file system while only consuming one file worth of space), or atomic move (TL;DR instant file moves, rather than copy+delete) files while processing content.
Use the optional paths if you dont understand, or dont want hardlinks/atomic moves.
The folks over at servarr.com wrote a good [write-up](https://wiki.servarr.com/docker-guide#consistent-and-well-planned-paths) on how to get started with this.
# changelog
changelogs:
- { date: "06.06.23:", desc: "Rebase nightly to Alpine 3.18." }
- { date: "19.12.22:", desc: "Rebase nightly to Alpine 3.17." }
- { date: "27.10.22:", desc: "Rebase nightly to Alpine 3.16, migrate to s6v3." }
- { date: "04.02.22:", desc: "Rebase nightly branch to Alpine." }
- { date: "13.12.21:", desc: "Remove unused dependencies." }
- { date: "17.10.21:", desc: "Remove `UMASK_SET`." }
- { date: "11.07.21:", desc: "Make the paths clearer to the user" }
- { date: "17.01.21:", desc: "Deprecate `UMASK_SET` in favor of UMASK in baseimage, see above for more information." }
- { date: "11.30.20:", desc: "Publish `develop` tag." }
- { date: "11.28.20:", desc: "Switch to v3 .NET CORE builds (no more mono, `5.14` tag is deprecated). Rebase to Focal (for issues on arm32v7, [see here](https://docs.linuxserver.io/faq#my-host-is-incompatible-with-images-based-on-ubuntu-focal))." }
- { date: "09.27.20:", desc: "Merge Preview into Nightly." }
- { date: "05.04.20:", desc: "Move app to /app." }
- { date: "01.08.19:", desc: "Rebase to Linuxserver LTS mono version." }
- { date: "13.06.19:", desc: "Add env variable for setting umask." }
-5
View File
@@ -1,5 +0,0 @@
#!/usr/bin/with-contenv bash
# permissions
chown -R abc:abc \
/config
+6
View File
@@ -0,0 +1,6 @@
#!/usr/bin/with-contenv bash
# shellcheck shell=bash
# permissions
lsiown -R abc:abc \
/config
@@ -0,0 +1 @@
oneshot
@@ -0,0 +1 @@
/etc/s6-overlay/s6-rc.d/init-radarr-config/run
+9
View File
@@ -0,0 +1,9 @@
#!/bin/bash
PORT=$(xmlstarlet sel -T -t -v /Config/Port /config/config.xml)
if [[ $(curl -sL "http://localhost:${PORT:-7878}/ping" | jq -r '.status' 2>/dev/null) = "OK" ]]; then
exit 0
else
exit 1
fi
@@ -0,0 +1 @@
3
+7
View File
@@ -0,0 +1,7 @@
#!/usr/bin/with-contenv bash
# shellcheck shell=bash
exec \
s6-notifyoncheck -d -n 300 -w 1000 \
cd /app/radarr/bin s6-setuidgid abc /app/radarr/bin/Radarr \
-nobrowser -data=/config
@@ -0,0 +1 @@
longrun
-12
View File
@@ -1,12 +0,0 @@
#!/usr/bin/with-contenv bash
if [ -n "${UMASK_SET}" ] && [ -z "${UMASK}" ]; then
echo -e "You are using a legacy method of defining umask\nplease update your environment variable from UMASK_SET to UMASK\nto keep the functionality after July 2021"
umask ${UMASK_SET}
fi
cd /app/radarr/bin || exit
exec \
s6-setuidgid abc /app/radarr/bin/Radarr \
-nobrowser -data=/config