Compare commits

..
Author SHA1 Message Date
LinuxServer-CI 52ff95c84a Bot Updating Package Versions 2026-07-12 12:48:32 +00:00
LinuxServer-CI b4151b4125 Bot Updating Package Versions 2026-07-09 08:40:44 +00:00
LinuxServer-CI 5b2a9f0e71 Bot Updating Templated Files 2026-07-09 08:32:55 +00:00
LinuxServer-CI a0bfdcec4c Bot Updating Templated Files 2026-07-09 08:29:57 +00:00
AdamandGitHub aad11ecbfd Merge pull request #267 from linuxserver/develop-3.24
Rebase to Alpine 3.24 (develop)
2026-07-09 09:27:19 +01:00
thespad 49bd924dc3 Rebase to Alpine 3.24 2026-07-04 14:49:08 +00:00
LinuxServer-CI 9f6210b92f Bot Updating Package Versions 2026-06-28 17:54:47 +00:00
LinuxServer-CI 49cf3dcc24 Bot Updating Package Versions 2026-06-21 18:13:02 +00:00
LinuxServer-CI d708f84b7a Bot Updating Package Versions 2026-06-14 18:05:27 +00:00
LinuxServer-CI 001abd0715 Bot Updating Package Versions 2026-06-01 07:50:05 +00:00
LinuxServer-CI 6a0fadfb59 Bot Updating Package Versions 2026-05-31 17:49:37 +00:00
LinuxServer-CI 9ddc754126 Bot Updating Package Versions 2026-05-17 17:45:49 +00:00
LinuxServer-CI 1cbd64f06a Bot Updating Templated Files 2026-05-10 17:40:14 +00:00
LinuxServer-CI 6e1c19ac07 Bot Updating Package Versions 2026-05-03 17:37:09 +00:00
LinuxServer-CI 931a40a5b2 Bot Updating Package Versions 2026-04-19 17:59:03 +00:00
LinuxServer-CI 3b858a0958 Bot Updating Package Versions 2026-04-19 17:25:46 +00:00
LinuxServer-CI 9ec31115ac Bot Updating Package Versions 2026-04-12 17:23:35 +00:00
LinuxServer-CI fc849dde50 Bot Updating Templated Files 2026-04-05 17:18:28 +00:00
LinuxServer-CI e778d307f1 Bot Updating Package Versions 2026-03-29 17:19:37 +00:00
LinuxServer-CI 73ac55cba8 Bot Updating Package Versions 2026-03-26 11:48:57 +00:00
LinuxServer-CI 57b5a3705a Bot Updating Package Versions 2026-03-08 17:04:40 +00:00
LinuxServer-CI 7996faa0b1 Bot Updating Package Versions 2026-03-01 17:03:54 +00:00
LinuxServer-CI 35ad0602e0 Bot Updating Templated Files 2026-02-15 17:07:41 +00:00
LinuxServer-CI 37406b5861 Bot Updating Templated Files 2026-02-15 17:05:18 +00:00
LinuxServer-CI 1c86e48e5d Bot Updating Package Versions 2026-02-08 17:06:32 +00:00
LinuxServer-CI 782e0424df Bot Updating Package Versions 2026-02-01 17:05:13 +00:00
LinuxServer-CI aebfa935b1 Bot Updating Package Versions 2026-01-16 17:07:40 +00:00
LinuxServer-CI 06fe90e8ce Bot Updating Templated Files 2026-01-16 17:03:45 +00:00
SimenandGitHub 6b19291f57 Merge pull request #263 from linuxserver/develop-3.23 2026-01-16 18:01:25 +01:00
thespad cc974e4147 Rebase to 3.23 2026-01-15 09:22:19 +00:00
LinuxServer-CI ae1cd6b215 Bot Updating Package Versions 2025-12-14 16:57:42 +00:00
LinuxServer-CI 3a775974be Bot Updating Package Versions 2025-11-23 16:58:58 +00:00
LinuxServer-CI 2e1bf2701c Bot Updating Templated Files 2025-11-23 16:55:34 +00:00
LinuxServer-CI 6669be8bb4 Bot Updating Package Versions 2025-10-26 17:58:54 +00:00
LinuxServer-CI ca5c52a3a3 Bot Updating Templated Files 2025-10-26 16:56:00 +00:00
LinuxServer-CI 7baba4ae6b Bot Updating Package Versions 2025-10-12 16:56:59 +00:00
LinuxServer-CI 1a5d2500a7 Bot Updating Package Versions 2025-10-06 21:05:47 +00:00
LinuxServer-CI 3d064ca69f Bot Updating Package Versions 2025-10-05 16:57:26 +00:00
LinuxServer-CI 6a517234a0 Bot Updating Package Versions 2025-09-28 17:13:03 +00:00
LinuxServer-CI ee88bc834b Bot Updating Package Versions 2025-09-21 19:58:45 +00:00
LinuxServer-CI 0549eacf1e Bot Updating Package Versions 2025-09-14 16:57:46 +00:00
LinuxServer-CI a2e4cfd6ac Bot Updating Package Versions 2025-08-24 13:41:35 +00:00
LinuxServer-CI 8a347210f1 Bot Updating Package Versions 2025-08-10 16:59:58 +00:00
LinuxServer-CI 896b696bb5 Bot Updating Package Versions 2025-08-03 09:26:41 +00:00
LinuxServer-CI 8fc16917b4 Bot Updating Package Versions 2025-07-20 17:00:36 +00:00
LinuxServer-CI 0b21e23fb2 Bot Updating Package Versions 2025-07-13 04:05:15 +00:00
LinuxServer-CI 93500def34 Bot Updating Package Versions 2025-07-05 15:45:38 +00:00
LinuxServer-CI a0f7785e43 Bot Updating Templated Files 2025-07-05 15:41:35 +00:00
AdamandGitHub 7e9f7ec6c4 Merge pull request #257 from linuxserver/develop-3.22 2025-07-05 16:39:10 +01:00
thespad 559bdd2d15 Rebase to 3.22 2025-07-05 15:01:18 +01:00
LinuxServer-CI 6431a7f51a Bot Updating Package Versions 2025-06-15 06:23:57 +00:00
LinuxServer-CI 1d44de92fe Bot Updating Package Versions 2025-06-15 05:44:34 +00:00
LinuxServer-CI 042a0491fd Bot Updating Templated Files 2025-06-15 05:41:10 +00:00
LinuxServer-CI c7e8388fbf Bot Updating Package Versions 2025-05-17 12:48:38 +00:00
LinuxServer-CI 2d9d089cbf Bot Updating Templated Files 2025-05-17 12:45:18 +00:00
LinuxServer-CI f56a633084 Bot Updating Package Versions 2025-05-11 16:56:12 +00:00
LinuxServer-CI b43aff878d Bot Updating Package Versions 2025-04-27 08:51:58 +00:00
LinuxServer-CI 92ef97c0fc Bot Updating Package Versions 2025-04-20 06:03:26 +00:00
LinuxServer-CI b90186478c Bot Updating Package Versions 2025-04-13 07:18:56 +00:00
LinuxServer-CI 524e373d9b Bot Updating Package Versions 2025-04-06 12:46:35 +00:00
LinuxServer-CI 85eafb7f8a Bot Updating Package Versions 2025-03-30 07:15:53 +00:00
LinuxServer-CI 154fca1e91 Bot Updating Package Versions 2025-03-24 16:33:30 +00:00
LinuxServer-CI 1db72aa55c Bot Updating Package Versions 2025-03-23 07:59:16 +00:00
LinuxServer-CI 38418585ed Bot Updating Package Versions 2025-03-18 13:33:37 +00:00
LinuxServer-CI 2df08e445a Bot Updating Package Versions 2025-03-16 08:50:14 +00:00
LinuxServer-CI d4d04f0267 Bot Updating Package Versions 2025-03-09 09:56:50 +00:00
LinuxServer-CI ed716a6046 Bot Updating Package Versions 2025-02-25 17:33:24 +00:00
LinuxServer-CI 5ec9ed8d9f Bot Updating Package Versions 2025-02-23 18:37:17 +00:00
LinuxServer-CI 8ea9853f06 Bot Updating Package Versions 2025-02-16 10:24:44 +00:00
LinuxServer-CI 3ebbddcbc4 Bot Updating Templated Files 2025-02-16 10:20:51 +00:00
LinuxServer-CI 87bc6cecc5 Bot Updating Package Versions 2025-02-09 15:53:39 +00:00
LinuxServer-CI ff338dceb2 Bot Updating Package Versions 2025-02-03 12:23:38 +00:00
LinuxServer-CI 5d9d8b9f48 Bot Updating Package Versions 2025-02-02 10:53:28 +00:00
LinuxServer-CI 92bd2effe0 Bot Updating Package Versions 2025-02-02 05:09:44 +00:00
LinuxServer-CI 38f8477713 Bot Updating Templated Files 2025-02-02 05:06:46 +00:00
LinuxServer-CI c04d5e6e0a Bot Updating Templated Files 2025-02-02 05:04:37 +00:00
LinuxServer-CI ec6be329f3 Bot Updating Package Versions 2025-01-19 14:59:48 +00:00
LinuxServer-CI 2d75eb3f4d Bot Updating Package Versions 2025-01-12 13:21:17 +00:00
LinuxServer-CI 51e96e124b Bot Updating Package Versions 2025-01-05 12:29:37 +00:00
LinuxServer-CI d690d4afbb Bot Updating Package Versions 2025-01-05 05:06:28 +00:00
LinuxServer-CI 6784965a3f Bot Updating Package Versions 2024-12-29 16:57:03 +00:00
LinuxServer-CI 1c794d2f54 Bot Updating Package Versions 2024-12-25 23:08:36 +00:00
LinuxServer-CI e68716fd35 Bot Updating Templated Files 2024-12-25 23:04:55 +00:00
RoxedusandGitHub 4bd3a9e7da Merge pull request #243 from linuxserver/develop-3.21 2024-12-26 00:02:35 +01:00
LinuxServer-CI 7461f46bf2 Bot Updating Package Versions 2024-12-22 13:07:06 +00:00
thespad 5e0f758f3c Rebase to 3.21 2024-12-20 16:47:09 +00:00
LinuxServer-CI d1d6328889 Bot Updating Package Versions 2024-12-16 18:12:04 +00:00
LinuxServer-CI 930f8a2cc7 Bot Updating Templated Files 2024-12-16 18:08:36 +00:00
LinuxServer-CI 18f79b5606 Bot Updating Templated Files 2024-12-15 17:00:36 +00:00
LinuxServer-CI f20f55a0f5 Bot Updating Templated Files 2024-12-15 16:57:18 +00:00
LinuxServer-CI e846a87f07 Bot Updating Package Versions 2024-12-15 08:08:01 +00:00
LinuxServer-CI 35cf936922 Bot Updating Package Versions 2024-12-08 17:00:46 +00:00
LinuxServer-CI 0e13103918 Bot Updating Templated Files 2024-12-08 16:57:17 +00:00
LinuxServer-CI ff95aeb2a7 Bot Updating Templated Files 2024-12-08 16:55:30 +00:00
LinuxServer-CI a14d0382f7 Bot Updating Templated Files 2024-12-01 17:00:05 +00:00
LinuxServer-CI 3f2e2fb7b3 Bot Updating Templated Files 2024-12-01 16:57:53 +00:00
LinuxServer-CI 9a6b1478d2 Bot Updating Templated Files 2024-12-01 16:56:02 +00:00
LinuxServer-CI 6943346271 Bot Updating Package Versions 2024-12-01 12:02:53 +00:00
LinuxServer-CI 73863d37f7 Bot Updating Package Versions 2024-11-19 07:52:13 +00:00
LinuxServer-CI 31f44269b4 Bot Updating Templated Files 2024-11-10 16:57:58 +00:00
LinuxServer-CI 3d31f25c9f Bot Updating Templated Files 2024-11-10 16:55:51 +00:00
LinuxServer-CI 2c9fe8ce59 Bot Updating Package Versions 2024-11-03 10:36:23 +00:00
LinuxServer-CI bf839e57ea Bot Updating Package Versions 2024-10-26 14:43:41 +00:00
LinuxServer-CI 670dfab20f Bot Updating Package Versions 2024-10-26 06:12:20 +00:00
LinuxServer-CI b85d3b9fa1 Bot Updating Package Versions 2024-10-20 11:46:05 +00:00
LinuxServer-CI a9687348b8 Bot Updating Package Versions 2024-10-12 16:01:54 +00:00
LinuxServer-CI 18355d3866 Bot Updating Package Versions 2024-10-09 14:25:23 +00:00
LinuxServer-CI 0c3f755a85 Bot Updating Package Versions 2024-09-29 05:23:43 +00:00
LinuxServer-CI ea0060961c Bot Updating Templated Files 2024-09-29 05:20:19 +00:00
LinuxServer-CI 876c4f64db Bot Updating Templated Files 2024-09-29 05:18:24 +00:00
LinuxServer-CI 97ba8306a9 Bot Updating Templated Files 2024-09-29 05:15:46 +00:00
LinuxServer-CI 738c9c2d07 Bot Updating Package Versions 2024-09-25 08:43:23 +00:00
LinuxServer-CI 9202f4f994 Bot Updating Package Versions 2024-09-22 16:57:03 +00:00
LinuxServer-CI 66899f24ac Bot Updating Package Versions 2024-09-21 00:44:14 +00:00
LinuxServer-CI d47a9be054 Bot Updating Package Versions 2024-09-15 13:33:17 +00:00
LinuxServer-CI 34988415d2 Bot Updating Package Versions 2024-09-08 07:54:57 +00:00
LinuxServer-CI 9f606742ef Bot Updating Package Versions 2024-09-02 14:52:27 +00:00
LinuxServer-CI cf7e1f5863 Bot Updating Package Versions 2024-09-01 16:57:23 +00:00
LinuxServer-CI 965c7c7305 Bot Updating Package Versions 2024-08-25 07:15:50 +00:00
LinuxServer-CI 8bdb13b131 Bot Updating Package Versions 2024-08-20 18:09:12 +00:00
LinuxServer-CI f9ff6adb4f Bot Updating Package Versions 2024-08-18 12:09:44 +00:00
LinuxServer-CI 59c136b766 Bot Updating Templated Files 2024-08-18 12:07:17 +00:00
LinuxServer-CI 2f37d055d6 Bot Updating Templated Files 2024-08-18 12:04:47 +00:00
LinuxServer-CI b5a10e6586 Bot Updating Package Versions 2024-08-11 16:56:38 +00:00
LinuxServer-CI da8cc6fba2 Bot Updating Package Versions 2024-07-28 16:56:10 +00:00
LinuxServer-CI 886583b592 Bot Updating Package Versions 2024-07-21 15:08:38 +00:00
LinuxServer-CI b77f7c7f7b Bot Updating Templated Files 2024-07-14 12:24:02 +00:00
thespad 5b267f9cd8 Fix comment indent 2024-07-14 13:21:49 +01:00
LinuxServer-CI 780723f47c Bot Updating Package Versions 2024-07-14 12:03:33 +00:00
LinuxServer-CI 77d6ab77ce Bot Updating Templated Files 2024-07-14 12:00:08 +00:00
LinuxServer-CI 52f20a8c75 Bot Updating Templated Files 2024-07-14 11:58:33 +00:00
RoxedusandGitHub f3a658859b Merge pull request #236 from linuxserver/develop-ro-tweaks
Move tmpdir, set COMPlus_EnableDiagnostics (develop)
2024-07-08 01:16:06 +02:00
LinuxServer-CI c81d6ad8e0 Bot Updating Package Versions 2024-07-07 11:51:45 +00:00
thespad 1875283bb5 Move tmpdir, set COMPlus_EnableDiagnostics 2024-07-03 19:21:38 +01:00
LinuxServer-CI fe33f0a027 Bot Updating Package Versions 2024-07-02 11:48:08 +00:00
LinuxServer-CI 9e207f122b Bot Updating Package Versions 2024-06-30 16:57:26 +00:00
LinuxServer-CI 1e908df511 Bot Updating Package Versions 2024-06-23 16:56:52 +00:00
LinuxServer-CI 61b96f20a1 Bot Updating Package Versions 2024-06-20 14:04:48 +00:00
LinuxServer-CI 46f2192ce6 Bot Updating Package Versions 2024-06-16 16:57:39 +00:00
LinuxServer-CI 51035c7f22 Bot Updating Package Versions 2024-06-09 16:56:43 +00:00
LinuxServer-CI 48888faeb2 Bot Updating Package Versions 2024-05-26 17:41:55 +00:00
AdamandGitHub 7197acafed Merge pull request #231 from linuxserver/develop-3.20
Rebase to 3.20 (Develop)
2024-05-26 18:37:55 +01:00
LinuxServer-CI 6f4b66a490 Bot Updating Package Versions 2024-05-26 17:02:34 +00:00
LinuxServer-CI 1908c053ef Bot Updating Templated Files 2024-05-26 16:58:25 +00:00
LinuxServer-CI d3f16111e7 Bot Updating Templated Files 2024-05-26 16:56:50 +00:00
thespad 144601fdd5 Rebase to 3.20 2024-05-26 17:40:49 +01:00
LinuxServer-CI cbe44d001b Bot Updating Package Versions 2024-05-19 16:57:50 +00:00
LinuxServer-CI 3ac4b2e799 Bot Updating Package Versions 2024-05-14 17:24:02 +00:00
LinuxServer-CI 63beff364b Bot Updating Package Versions 2024-05-13 02:07:14 +00:00
LinuxServer-CI 53ace81002 Bot Updating Package Versions 2024-05-12 17:00:53 +00:00
LinuxServer-CI 350516c001 Bot Updating Templated Files 2024-05-12 16:56:48 +00:00
LinuxServer-CI 5acc715831 Bot Updating Package Versions 2024-05-05 09:32:13 +00:00
LinuxServer-CI 31f79a7bc5 Bot Updating Templated Files 2024-05-05 09:28:15 +00:00
LinuxServer-CI 738b9d2faf Bot Updating Package Versions 2024-04-28 10:34:38 +00:00
LinuxServer-CI e244c42433 Bot Updating Package Versions 2024-04-21 06:16:52 +00:00
LinuxServer-CI 527ee1a91e Bot Updating Package Versions 2024-04-14 22:44:05 +00:00
LinuxServer-CI 738cf59748 Bot Updating Package Versions 2024-04-13 05:49:48 +00:00
LinuxServer-CI e949a9cb72 Bot Updating Package Versions 2024-04-07 05:00:20 +00:00
LinuxServer-CI 6deaa63d79 Bot Updating Package Versions 2024-03-31 04:07:07 +00:00
LinuxServer-CI b5796aab75 Bot Updating Package Versions 2024-03-24 16:57:15 +00:00
LinuxServer-CI 7ab736589c Bot Updating Package Versions 2024-03-20 19:16:07 +00:00
AdamandGitHub 4ffbe58a23 Merge pull request #225 from linuxserver/develop-3.19
Rebase to 3.19 (develop)
2024-03-20 19:12:33 +00:00
TheSpad 4f4b07bed4 Rebase to 3.19 2024-03-20 17:28:10 +00:00
LinuxServer-CI 466bbcd87d Bot Updating Package Versions 2024-03-17 11:52:46 +00:00
LinuxServer-CI 284417d831 Bot Updating Package Versions 2024-03-17 04:08:35 +00:00
LinuxServer-CI ff4cf58bb0 Bot Updating Templated Files 2024-03-17 04:05:36 +00:00
LinuxServer-CI 84acf94ff8 Bot Updating Package Versions 2024-03-03 10:26:55 +00:00
drizandGitHub 2d7415475a Merge pull request #222 from linuxserver/develop-ci
develop: fix ci screenshot
2024-02-27 10:37:48 -05:00
aptalca 1f5d08dea2 fix ci screenshot 2024-02-27 10:07:45 -05:00
LinuxServer-CI 8793aaf4b2 Bot Updating Package Versions 2024-02-27 00:29:09 +00:00
LinuxServer-CI af461e6473 Bot Updating Templated Files 2024-02-25 16:59:23 +00:00
LinuxServer-CI eff9e2b3f2 Bot Updating Templated Files 2024-02-25 16:56:16 +00:00
LinuxServer-CI 6fd2d49ceb Bot Updating Package Versions 2024-02-18 17:36:39 +00:00
LinuxServer-CI badf0de805 Bot Updating Package Versions 2024-02-11 17:29:43 +00:00
LinuxServer-CI 8fcd0277a9 Bot Updating Package Versions 2024-02-11 16:56:39 +00:00
LinuxServer-CI eea90cb913 Bot Updating Package Versions 2024-02-04 11:26:29 +00:00
LinuxServer-CI f4081f43c2 Bot Updating Package Versions 2024-02-04 05:04:45 +00:00
LinuxServer-CI 9984cebf1a Bot Updating Package Versions 2024-01-28 16:56:56 +00:00
LinuxServer-CI e9e6a3bd24 Bot Updating Package Versions 2024-01-21 05:38:50 +00:00
LinuxServer-CI 780e8fee5f Bot Updating Package Versions 2024-01-14 05:11:52 +00:00
LinuxServer-CI 3a4e38d674 Bot Updating Package Versions 2024-01-14 05:08:57 +00:00
LinuxServer-CI f9e51138e9 Bot Updating Templated Files 2024-01-14 05:06:07 +00:00
LinuxServer-CI edd0b2fabe Bot Updating Templated Files 2024-01-14 05:03:25 +00:00
LinuxServer-CI 53ba78a732 Bot Updating Package Versions 2023-12-31 16:56:23 +00:00
LinuxServer-CI 47d6a499c7 Bot Updating Package Versions 2023-12-24 16:57:36 +00:00
LinuxServer-CI c91ef7182d Bot Updating Package Versions 2023-12-19 19:44:06 +00:00
LinuxServer-CI 584acae69f Bot Updating Package Versions 2023-12-10 11:26:24 +00:00
LinuxServer-CI efcb7b1bac Bot Updating Package Versions 2023-12-03 16:57:02 +00:00
LinuxServer-CI 2ef0db19ae Bot Updating Package Versions 2023-11-26 05:08:27 +00:00
LinuxServer-CI 853a39fb63 Bot Updating Package Versions 2023-11-20 00:37:00 +00:00
LinuxServer-CI 7da581ccd1 Bot Updating Package Versions 2023-11-19 16:57:27 +00:00
LinuxServer-CI 8734d164ab Bot Updating Package Versions 2023-11-19 05:10:09 +00:00
LinuxServer-CI 95085b4a73 Bot Updating Package Versions 2023-11-19 05:06:38 +00:00
LinuxServer-CI d6054f8ac0 Bot Updating Templated Files 2023-11-19 05:02:58 +00:00
LinuxServer-CI debebe27f6 Bot Updating Package Versions 2023-11-11 21:38:20 +00:00
LinuxServer-CI 93b6e9e964 Bot Updating Package Versions 2023-10-29 08:13:38 +00:00
LinuxServer-CI a59e39d2e2 Bot Updating Package Versions 2023-10-22 06:40:21 +00:00
LinuxServer-CI fddb3fbfc0 Bot Updating Package Versions 2023-10-15 16:57:17 +00:00
LinuxServer-CI 70caacfb77 Bot Updating Package Versions 2023-10-08 04:04:37 +00:00
LinuxServer-CI fc2e991f7e Bot Updating Templated Files 2023-10-08 04:00:55 +00:00
LinuxServer-CI efd9bdd70a Bot Updating Templated Files 2023-10-08 03:59:06 +00:00
LinuxServer-CI 19eb5c59f0 Bot Updating Package Versions 2023-10-01 14:13:14 +00:00
LinuxServer-CI e942592eb9 Bot Updating Package Versions 2023-09-24 13:21:32 +00:00
LinuxServer-CI 28038abf2d Bot Updating Package Versions 2023-09-03 04:28:31 +00:00
LinuxServer-CI d7bd68edc1 Bot Updating Package Versions 2023-08-27 17:22:41 +00:00
LinuxServer-CI 4670e528be Bot Updating Package Versions 2023-08-20 16:57:07 +00:00
LinuxServer-CI ae27ed5f46 Bot Updating Package Versions 2023-08-14 00:43:11 +00:00
LinuxServer-CI bacf01b605 Bot Updating Package Versions 2023-08-13 04:05:10 +00:00
LinuxServer-CI 2a1d5fab8e Bot Updating Package Versions 2023-08-06 16:56:24 +00:00
LinuxServer-CI 6cdef82d63 Bot Updating Package Versions 2023-07-30 06:12:02 +00:00
LinuxServer-CI 310711c0f6 Bot Updating Package Versions 2023-07-23 04:09:45 +00:00
LinuxServer-CI ee061e1e58 Bot Updating Package Versions 2023-07-16 05:19:16 +00:00
LinuxServer-CI 9c2c8b7b0f Bot Updating Package Versions 2023-07-09 12:01:50 +00:00
LinuxServer-CI 336732d770 Bot Updating Package Versions 2023-07-02 17:00:06 +00:00
LinuxServer-CI 46202bb670 Bot Updating Templated Files 2023-07-02 16:56:48 +00:00
LinuxServer-CI d77e9a9292 Bot Updating Package Versions 2023-06-18 16:56:22 +00:00
LinuxServer-CI 59f928450e Bot Updating Package Versions 2023-06-14 08:05:00 +00:00
AdamandGitHub 1faa75b850 Merge pull request #208 from linuxserver/develop-3.18 2023-06-14 09:01:33 +01:00
TheSpad 052ff40b8f Rebase to 3.18 (develop) 2023-06-06 15:22:08 +01:00
LinuxServer-CI bd69289e16 Bot Updating Package Versions 2023-06-04 16:46:43 +00:00
LinuxServer-CI 7726e689d2 Bot Updating Package Versions 2023-05-28 15:40:08 +00:00
LinuxServer-CI b03f40cfab Bot Updating Templated Files 2023-05-28 15:36:39 +00:00
LinuxServer-CI 71a7497f5c Bot Updating Package Versions 2023-05-21 16:55:47 +00:00
LinuxServer-CI 056d32010d Bot Updating Package Versions 2023-05-15 23:55:29 +00:00
LinuxServer-CI 75938df94d Bot Updating Package Versions 2023-05-07 16:56:04 +00:00
LinuxServer-CI 38470c7a83 Bot Updating Templated Files 2023-04-30 16:56:15 +00:00
LinuxServer-CI 6102ef6c50 Bot Updating Templated Files 2023-04-30 16:55:10 +00:00
LinuxServer-CI 19b814c5a3 Bot Updating Package Versions 2023-04-23 13:40:49 -05:00
LinuxServer-CI cf8059bced Bot Updating Package Versions 2023-04-23 16:55:22 +00:00
LinuxServer-CI e13aaff00b Bot Updating Package Versions 2023-04-15 11:00:26 -05:00
LinuxServer-CI 324b9c65f8 Bot Updating Package Versions 2023-04-09 18:56:21 +02:00
LinuxServer-CI 2f16e851a1 Bot Updating Package Versions 2023-04-03 18:03:43 +02:00
LinuxServer-CI 089ea9666e Bot Updating Templated Files 2023-04-03 18:00:40 +02:00
LinuxServer-CI ed5f04a269 Bot Updating Templated Files 2023-04-03 17:59:04 +02:00
LinuxServer-CI 8afd10a56d Bot Updating Templated Files 2023-04-03 17:57:27 +02:00
LinuxServer-CI 1ea2f4aa3a Bot Updating Package Versions 2023-03-27 10:58:05 -05:00
LinuxServer-CI 0e541c9b91 Bot Updating Package Versions 2023-03-06 17:00:35 +01:00
LinuxServer-CI a098ca06aa Bot Updating Templated Files 2023-03-06 16:57:24 +01:00
LinuxServer-CI edec3d0283 Bot Updating Package Versions 2023-02-24 12:10:51 +00:00
AdamandGitHub 3bc534776e Merge pull request #199 from linuxserver/develop-ping 2023-02-24 12:07:50 +00:00
TheSpad bcd75ef38b Use /ping endpoint for readiness check 2023-02-24 10:04:53 +00:00
LinuxServer-CI 76e74a47ea Bot Updating Package Versions 2023-02-20 16:58:30 +01:00
LinuxServer-CI c8472aa5f3 Bot Updating Templated Files 2023-02-11 13:22:04 -06:00
LinuxServer-CI dc34da5882 Bot Updating Templated Files 2023-02-11 13:20:41 -06:00
LinuxServer-CI 03c4e6e1e0 Bot Updating Package Versions 2023-01-21 11:46:26 -06:00
LinuxServer-CI 68c28f77ec Bot Updating Package Versions 2023-01-16 16:57:46 +01:00
LinuxServer-CI 79772e74e3 Bot Updating Package Versions 2023-01-02 09:57:45 -06:00
LinuxServer-CI 9e0745e025 Bot Updating Package Versions 2022-12-21 12:09:25 -06:00
RoxedusandGitHub c587935fc6 Merge pull request #192 from linuxserver/develop-3.17 2022-12-21 19:06:53 +01:00
TheSpad 3e5df71d6b Rebase develop tp 3.17, migrate to s6v3 2022-12-19 17:34:49 +00:00
LinuxServer-CI a3b9f6daf4 Bot Updating Templated Files 2022-12-05 17:00:02 +01:00
LinuxServer-CI 75dc98406b Bot Updating Templated Files 2022-12-05 09:58:45 -06:00
LinuxServer-CI 11e779fa65 Bot Updating Templated Files 2022-12-05 16:57:23 +01:00
LinuxServer-CI 263a29f5ba Bot Updating Package Versions 2022-11-14 10:00:29 -06:00
LinuxServer-CI 7223cc6b51 Bot Updating Templated Files 2022-11-14 09:57:29 -06:00
LinuxServer-CI ff72ad430d Bot Updating Package Versions 2022-11-07 09:57:59 -06:00
LinuxServer-CI e1f577754c Bot Updating Package Versions 2022-10-31 10:58:54 -05:00
LinuxServer-CI 7a7b2b382e Bot Updating Templated Files 2022-09-19 11:00:39 -05:00
LinuxServer-CI c606a84d52 Bot Updating Package Versions 2022-09-05 17:57:43 +02:00
LinuxServer-CI 7e976ef19c Bot Updating Package Versions 2022-08-29 17:57:53 +02:00
LinuxServer-CI e847e7af62 Bot Updating Package Versions 2022-08-14 00:00:18 +02:00
LinuxServer-CI fdac0c3cd9 Bot Updating Package Versions 2022-08-08 10:57:55 -05:00
LinuxServer-CI 2bd9d1cb8e Bot Updating Package Versions 2022-08-01 17:59:23 +02:00
LinuxServer-CI cc04ddb5c2 Bot Updating Package Versions 2022-07-20 07:00:39 -05:00
LinuxServer-CI ca55ea1b88 Bot Updating Package Versions 2022-07-11 18:02:32 +02:00
LinuxServer-CI 9cf32c471b Bot Updating Package Versions 2022-07-04 10:57:49 -05:00
LinuxServer-CI 4d3ba661a4 Bot Updating Package Versions 2022-05-16 10:58:24 -05:00
LinuxServer-CI 0134bd5147 Bot Updating Package Versions 2022-05-02 18:03:23 +02:00
LinuxServer-CI 478cedab2b Bot Updating Templated Files 2022-05-02 11:00:56 -05:00
LinuxServer-CI 3dbf3c6365 Bot Updating Templated Files 2022-05-02 10:59:33 -05:00
LinuxServer-CI 818554338b Bot Updating Package Versions 2022-04-15 04:50:25 +02:00
LinuxServer-CI fe7c57a21c Bot Updating Package Versions 2022-04-04 17:57:48 +02:00
LinuxServer-CI 032919d838 Bot Updating Package Versions 2022-03-31 10:00:29 -05:00
LinuxServer-CI b19b39a991 Bot Updating Package Versions 2022-03-28 17:57:58 +02:00
LinuxServer-CI c72a1d9492 Bot Updating Package Versions 2022-03-21 08:02:00 -05:00
aptalcaandGitHub 4123bb8ea2 Merge pull request #172 from linuxserver/remove-develop-warning
Remove alpine rebase warning
2022-03-21 08:58:57 -04:00
TheSpad 4846b6f0a9 Remove alpine warning 2022-03-20 17:50:01 +00:00
LinuxServer-CI 84d840b8d1 Bot Updating Package Versions 2022-02-27 19:59:44 +01:00
LinuxServer-CI 10ebab3a40 Bot Updating Package Versions 2022-02-21 17:49:09 +01:00
AdamandGitHub c4ae6680c5 Merge pull request #165 from linuxserver/develop-alpine 2022-02-21 16:46:22 +00:00
TheSpad f3244f9fd6 Fix indentation 2022-02-21 16:29:16 +00:00
LinuxServer-CI eeadbf1ee6 Bot Updating Package Versions 2022-02-21 16:57:39 +01:00
TheSpad 5ab25e2fe7 Rebase develop branch to Alpine 2022-02-20 12:14:36 +00:00
LinuxServer-CI 116a4e0be4 Bot Updating Package Versions 2022-01-24 16:57:45 +01:00
LinuxServer-CI 1e74f9d759 Bot Updating Package Versions 2022-01-16 00:00:13 +01:00
LinuxServer-CI 1b8dbc5792 Bot Updating Package Versions 2021-12-27 17:11:27 +01:00
LinuxServer-CI f994cebf13 Bot Updating Package Versions 2021-12-20 17:01:49 +01:00
LinuxServer-CI 94fa264de0 Bot Updating Templated Files 2021-12-20 16:58:53 +01:00
LinuxServer-CI 90e76776a3 Bot Updating Templated Files 2021-12-20 16:57:32 +01:00
LinuxServer-CI ae40326102 Bot Updating Package Versions 2021-11-29 16:58:29 +01:00
LinuxServer-CI 4cb3beaf2e Bot Updating Package Versions 2021-11-22 16:58:10 +01:00
LinuxServer-CI df128caa01 Bot Updating Package Versions 2021-11-15 16:58:04 +01:00
LinuxServer-CI 51cacb2f37 Bot Updating Package Versions 2021-11-08 16:57:48 +01:00
LinuxServer-CI 7573f6c7da Bot Updating Package Versions 2021-10-17 19:34:31 +02:00
aptalcaandGitHub 020e939e30 Merge pull request #150 from linuxserver/umask/develop
Remove umask
2021-10-17 13:32:06 -04:00
Roxedus 51bb3f686e Remove umask 2021-10-17 17:36:25 +02:00
LinuxServer-CI dba3088b3a Bot Updating Package Versions 2021-10-04 18:00:46 +02:00
LinuxServer-CI 4e9bf527b8 Bot Updating Templated Files 2021-10-04 17:58:22 +02:00
LinuxServer-CI 0e08d69d9b Bot Updating Templated Files 2021-10-04 17:57:16 +02:00
LinuxServer-CI f3d633d224 Bot Updating Package Versions 2021-09-27 17:58:13 +02:00
LinuxServer-CI d46e9594cc Bot Updating Package Versions 2021-09-20 17:58:03 +02:00
LinuxServer-CI 419e411d84 Bot Updating Package Versions 2021-09-06 17:57:54 +02:00
LinuxServer-CI cf6818e15f Bot Updating Package Versions 2021-08-30 18:00:02 +02:00
LinuxServer-CI 3e93b98fd4 Bot Updating Templated Files 2021-08-30 17:57:28 +02:00
LinuxServer-CI 708c11984f Bot Updating Package Versions 2021-08-23 17:59:31 +02:00
LinuxServer-CI b609ecbd32 Bot Updating Package Versions 2021-08-09 17:58:53 +02:00
LinuxServer-CI e8766b010e Bot Updating Package Versions 2021-08-02 17:59:10 +02:00
LinuxServer-CI 7da914ecd8 Bot Updating Package Versions 2021-07-26 17:59:28 +02:00
RoxedusandGitHub 5c91d19e9e Merge pull request #145 from linuxserver/runtime/develop
Use runtime when checking for updates.
2021-07-13 21:12:06 +02:00
LinuxServer-CI ed78210c41 Bot Updating Package Versions 2021-07-12 16:33:57 +00:00
Roxedus 4accde6615 Use runtime when checking for updates. 2021-07-12 00:39:42 +02:00
LinuxServer-CI ebfd5064a6 Bot Updating Package Versions 2021-07-05 16:03:07 +00:00
LinuxServer-CI 7c73f595ef Bot Updating Templated Files 2021-07-05 15:59:46 +00:00
LinuxServer-CI d03db40d8f Bot Updating Templated Files 2021-07-05 15:58:20 +00:00
LinuxServer-CI 5846abb94d Bot Updating Package Versions 2021-06-14 17:09:30 +01:00
LinuxServer-CI 7f0890670c Bot Updating Package Versions 2021-05-28 12:36:04 +01:00
LinuxServer-CI 45b719357d Bot Updating Package Versions 2021-05-04 07:59:56 -04:00
LinuxServer-CI 677b368665 Bot Updating Package Versions 2021-05-03 17:07:25 +01:00
LinuxServer-CI 4ed86a7be0 Bot Updating Package Versions 2021-04-21 01:17:40 -04:00
LinuxServer-CI 1f5fc81114 Bot Updating Package Versions 2021-04-19 17:09:39 +01:00
LinuxServer-CI 65574035f8 Bot Updating Templated Files 2021-04-19 17:04:13 +01:00
LinuxServer-CI 3a6649a4be Bot Updating Templated Files 2021-04-19 17:03:00 +01:00
LinuxServer-CI c5c6190cee Bot Updating Package Versions 2021-04-12 17:05:55 +01:00
LinuxServer-CI 37226ef5ce Bot Updating Package Versions 2021-04-05 16:07:16 +00:00
LinuxServer-CI 4fa4ac2e95 Bot Updating Package Versions 2021-03-15 16:02:14 +00:00
LinuxServer-CI 734f22388d Bot Updating Package Versions 2021-03-01 16:02:05 +00:00
LinuxServer-CI b6a77f141b Bot Updating Package Versions 2021-02-22 11:02:33 -05:00
LinuxServer-CI 0800863089 Bot Updating Package Versions 2021-02-15 11:06:56 -05:00
LinuxServer-CI eae4e8872a Bot Updating Templated Files 2021-02-15 11:01:45 -05:00
LinuxServer-CI 3c0d8104f7 Bot Updating Templated Files 2021-02-15 11:00:27 -05:00
LinuxServer-CI feb3b8cbba Bot Updating Package Versions 2021-02-05 17:24:26 +00:00
LinuxServer-CI a8f9149970 Bot Updating Package Versions 2021-02-01 16:09:23 +00:00
LinuxServer-CI f273e7d782 Bot Updating Package Versions 2021-01-25 11:38:23 -05:00
LinuxServer-CI 9a24c50a00 Bot Updating Package Versions 2021-01-18 13:37:10 +00:00
aptalcaandGitHub 093a23e7ad Merge pull request #134 from linuxserver/develop-deprecate-umask_set
Deprecate UMASK_SET in favor of UMASK in baseimage
2021-01-18 08:31:24 -05:00
Roxedus 5995f9c44b Deprecate UMASK_SET in favor of UMASK in baseimage 2021-01-18 09:45:36 +01:00
LinuxServer-CI 28ee5f2272 Bot Updating Templated Files 2021-01-13 04:12:26 +00:00
LinuxServer-CI abf6f57cea Bot Updating Package Versions 2021-01-09 16:11:00 -05:00
LinuxServer-CI f764a4aa00 Bot Updating Templated Files 2020-12-15 22:46:31 -05:00
LinuxServer-CI 4422e3e98e Bot Updating Templated Files 2020-12-15 22:45:15 -05:00
LinuxServer-CI 03eff4ffe4 Bot Updating Package Versions 2020-12-11 00:02:56 -05:00
saargandGitHub f376dc7aaa Merge pull request #119 from linuxserver/develop-dev
publish develop tag
2020-12-02 10:40:57 +01:00
aptalca 688fc9c373 publish develop tag 2020-11-30 16:37:36 -05:00
LinuxServer-CI 69c9f30b77 Bot Updating Package Versions 2020-11-29 01:23:07 -05:00
aptalcaandGitHub 546d118231 Merge pull request #114 from linuxserver/master-v3
switch to v3netcore, rebase to focal, add triggers
2020-11-29 01:18:09 -05:00
aptalca ababbb830d update s6 service for net core bin 2020-11-29 01:01:18 -05:00
aptalca 7bd9d98f63 switch to v3netcore, rebase to focal, add triggers 2020-11-28 23:33:19 -05:00
LinuxServer-CI 08a431877c Bot Updating Package Versions 2020-11-24 06:39:49 +00:00
LinuxServer-CI 22ba541de7 Bot Updating Package Versions 2020-11-17 06:14:07 +00:00
LinuxServer-CI d8e94324ab Bot Updating Package Versions 2020-11-10 01:13:23 -05:00
LinuxServer-CI 8d80e122a1 Bot Updating Package Versions 2020-11-02 15:00:10 +00:00
LinuxServer-CI 3ebd628ec2 Bot Updating Templated Files 2020-11-02 09:55:54 -05:00
thelamer 3a663ec722 update baseimages 2020-11-02 06:53:57 -08:00
LinuxServer-CI 9f753517c3 Bot Updating Package Versions 2020-10-27 02:12:58 -04:00
LinuxServer-CI cd81bb2947 Bot Updating Package Versions 2020-10-20 05:13:43 +00:00
LinuxServer-CI 68ded84aff Bot Updating Templated Files 2020-10-06 01:11:28 -04:00
LinuxServer-CI 7c18caa1c0 Bot Updating Templated Files 2020-10-06 01:10:16 -04:00
LinuxServer-CI b19b3f29c1 Bot Updating Package Versions 2020-09-27 15:49:44 +01:00
aptalcaandGitHub 619633221e Merge pull request #107 from linuxserver/readme-updates
Readme Updates master
2020-09-27 10:47:21 -04:00
Eric Nemchik b0fb51c6e8 Readme Updates 2020-09-27 09:04:43 -05:00
LinuxServer-CI 2ec3ac2799 Bot Updating Package Versions 2020-09-15 01:12:46 -04:00
LinuxServer-CI 3253d688d4 Bot Updating Package Versions 2020-09-08 01:13:28 -04:00
LinuxServer-CI a04e67b420 Bot Updating Package Versions 2020-08-24 15:12:43 -04:00
LinuxServer-CI 3aad127ba7 Bot Updating Templated Files 2020-08-24 15:10:32 -04:00
Eric NemchikandGitHub 4933db924a Merge pull request #98 from axilleas/patch-1
Proper format paths
2020-08-24 14:09:28 -05:00
Achilleas PipinellisandGitHub 89a5ad7224 Make the mappings explanation clearer 2020-08-24 20:57:13 +02:00
LinuxServer-CI 57a101e5e1 Bot Updating Package Versions 2020-08-18 05:11:34 +00:00
LinuxServer-CI 90dcfb6234 Bot Updating Package Versions 2020-08-11 01:13:45 -04:00
LinuxServer-CI 6267ebfc9e Bot Updating Package Versions 2020-08-04 01:14:28 -04:00
LinuxServer-CI 62cebe9bed Bot Updating Templated Files 2020-08-04 05:12:06 +00:00
LinuxServer-CI ab428698eb Bot Updating Templated Files 2020-08-04 01:10:48 -04:00
LinuxServer-CI 2d8798d1dd Bot Updating Package Versions 2020-07-28 05:13:00 +00:00
LinuxServer-CI 5194d14c3e Bot Updating Package Versions 2020-07-21 01:11:15 -04:00
LinuxServer-CI eb591ec9f2 Bot Updating Package Versions 2020-07-14 05:11:31 +00:00
Achilleas PipinellisandGitHub c0abd2f84e Fix typo of "Mappings" 2020-07-05 19:27:13 +02:00
LinuxServer-CI 2c495845ba Bot Updating Package Versions 2020-07-03 17:45:46 +00:00
LinuxServer-CI 46543e4715 Bot Updating Package Versions 2020-06-30 05:11:10 +00:00
Achilleas PipinellisandGitHub 187e71dd94 Proper format paths
Add backticks to paths so they are easier to discern
2020-06-29 09:27:14 +02:00
LinuxServer-CI 3870c0d46e Bot Updating Package Versions 2020-06-23 05:11:11 +00:00
LinuxServer-CI 610a1f00f1 Bot Updating Package Versions 2020-06-16 05:11:28 +00:00
LinuxServer-CI 227096e384 Bot Updating Package Versions 2020-06-09 05:12:40 +00:00
LinuxServer-CI c7f709bf4b Bot Updating Templated Files 2020-06-09 01:09:59 -04:00
LinuxServer-CI a4f485a5f3 Bot Updating Package Versions 2020-06-02 07:12:35 +02:00
LinuxServer-CI 657849e6ca Bot Updating Templated Files 2020-06-02 05:10:20 +00:00
LinuxServer-CI 0263dad59a Bot Updating Package Versions 2020-05-26 01:11:22 -04:00
LinuxServer-CI 84b4ea20dc Bot Updating Package Versions 2020-05-19 01:11:27 -04:00
LinuxServer-CI a0efeaa505 Bot Updating Package Versions 2020-05-05 05:13:15 +00:00
LinuxServer-CI 3f3a069717 Bot Updating Package Versions 2020-04-28 07:13:20 +02:00
LinuxServer-CI 4e93c6a725 Bot Updating Templated Files 2020-04-28 05:09:53 +00:00
LinuxServer-CI e8e4c1722f Bot Updating Package Versions 2020-04-09 20:48:51 -05:00
LinuxServer-CI f6e1cd2dd8 Bot Updating Templated Files 2020-04-10 02:42:43 +01:00
aptalcaandGitHub 7417bd75d3 Merge pull request #91 from linuxserver/master-app
Move app to /app
2020-04-09 21:41:45 -04:00
Eric Nemchik 1bec293f2c Fix perms on /app 2020-04-08 16:37:25 -05:00
LinuxServer-CI 273b142873 Bot Updating Templated Files 2020-04-07 23:33:15 +01:00
LinuxServer-CI cf8fb09620 Bot Updating Templated Files 2020-04-08 00:32:22 +02:00
LinuxServer-CI 4cf3a68160 Bot Updating Templated Files 2020-04-07 12:45:06 -04:00
Eric NemchikandGitHub ad0b82504c Merge pull request #94 from linuxserver/nemchik-patch-1
Add donate link
2020-04-07 11:43:58 -05:00
Eric NemchikandGitHub f4fc9a9144 Add donate link 2020-04-07 11:30:24 -05:00
Eric Nemchik 7e95fffe50 Move app to /app 2020-04-05 02:38:55 -05:00
LinuxServer-CI b6cd983c44 Bot Updating Package Versions 2020-03-31 01:13:30 -04:00
LinuxServer-CI c14f7c64b3 Bot Updating Package Versions 2020-03-24 01:40:47 +01:00
LinuxServer-CI 03f05a86bc Bot Updating Templated Files 2020-03-24 00:38:25 +00:00
Eric NemchikandGitHub 09975cdf7b Merge pull request #85 from linuxserver/drizuid-patch-1
Update readme-vars.yml
2020-03-23 19:37:21 -05:00
drizandGitHub f9ac266163 Update readme-vars.yml
typo in instructions, fix formatting
2020-03-23 20:21:52 -04:00
LinuxServer-CI 77bfe72043 Bot Updating Templated Files 2020-03-23 20:14:37 +00:00
aptalcaandGitHub 376a44125c Merge pull request #84 from linuxserver/hardlinking-notes
Update readme-vars.yml
2020-03-23 15:56:30 -04:00
aptalca 5010fe47a1 update maintainer 2020-03-23 13:36:29 -04:00
drizandGitHub 4be7abe8f6 Update readme-vars.yml
removed brackets and ensured absolute paths
2020-03-23 11:05:30 -04:00
drizandGitHub b6b81e45c9 Update readme-vars.yml
added notes about hardlinking and some options to accomplish this.
2020-03-22 11:00:44 -04:00
LinuxServer-CI 3700ba7424 Bot Updating Package Versions 2020-03-17 06:13:02 +00:00
LinuxServer-CI 99b08ad46e Bot Updating Package Versions 2020-02-25 06:15:28 +00:00
LinuxServer-CI 8277af9a6b Bot Updating Package Versions 2020-02-17 04:49:44 +00:00
LinuxServer-CI b3dd8f4b08 Bot Updating Package Versions 2020-02-11 06:16:36 +00:00
LinuxServer-CI 4832fd661a Bot Updating Package Versions 2020-02-04 07:12:41 +01:00
LinuxServer-CI 97def9b43a Bot Updating Package Versions 2020-01-28 01:15:51 -05:00
LinuxServer-CI 370ba359fd Bot Updating Package Versions 2020-01-21 07:17:11 +01:00
LinuxServer-CI 2658f83bf1 Bot Updating Package Versions 2019-12-24 01:12:51 -05:00
LinuxServer-CI 28e28954fd Bot Updating Package Versions 2019-12-10 06:15:29 +00:00
LinuxServer-CI f41ae21e64 Bot Updating Templated Files 2019-12-03 03:42:14 +01:00
LinuxServer-CI f7cd78669a Bot Updating Package Versions 2019-11-26 06:17:25 +00:00
LinuxServer-CI ccf1976503 Bot Updating Package Versions 2019-11-19 06:12:30 +00:00
LinuxServer-CI a27bdacb05 Bot Updating Package Versions 2019-11-05 06:14:44 +00:00
LinuxServer-CI 2216b835a9 Bot Updating Templated Files 2019-11-05 07:10:00 +01:00
LinuxServer-CI 3ea62589b2 Bot Updating Package Versions 2019-10-28 16:15:02 +00:00
Jameel Al-AzizandRyan Kuba ef5deb7a0c 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-10-28 09:11:01 -07:00
LinuxServer-CI ea588c3e62 Bot Updating Package Versions 2019-10-22 07:11:57 +02:00
LinuxServer-CI 1935981f18 Bot Updating Package Versions 2019-10-15 01:15:14 -04:00
LinuxServer-CI 72be406f5b Bot Updating Package Versions 2019-10-08 01:18:04 -04:00
LinuxServer-CI 6ab6e9bda9 Bot Updating Templated Files 2019-10-08 01:11:03 -04:00
LinuxServer-CI 8ff4d76d43 Bot Updating Templated Files 2019-10-08 06:10:09 +01:00
LinuxServer-CI d810717dea Bot Updating Package Versions 2019-10-01 06:12:53 +01:00
LinuxServer-CI 77bf30479f Bot Updating Package Versions 2019-09-24 01:16:03 -04:00
LinuxServer-CI f8e2a3f91a Bot Updating Package Versions 2019-09-17 01:16:38 -04:00
LinuxServer-CI e4623dd834 Bot Updating Package Versions 2019-09-10 01:13:39 -04:00
LinuxServer-CI c64e15b20f Bot Updating Templated Files 2019-09-03 01:11:46 -04:00
LinuxServer-CI 6baf1a0894 Bot Updating Templated Files 2019-09-03 01:10:37 -04:00
LinuxServer-CI f4d2b507de Bot Updating Package Versions 2019-08-27 01:16:11 -04:00
LinuxServer-CI de7a5067bd Bot Updating Package Versions 2019-08-15 02:27:18 +01:00
LinuxServer-CI 10ebf822fe Bot Updating Package Versions 2019-08-13 01:15:58 -04:00
LinuxServer-CI 54892a1948 Bot Updating Package Versions 2019-08-03 22:15:40 +02:00
aptalcaandGitHub de56a0459e Merge pull request #57 from thelamer/master
Master - adding LTS branch for us to freeze a stable mono for downstream
2019-08-03 16:09:03 -04:00
thelamer bc01e3ad0b adding LTS branch for us to freeze a stable mono for downstream 2019-08-01 17:46:16 -07:00
LinuxServer-CI a693fe3a44 Bot Updating Package Versions 2019-07-30 01:11:43 -04:00
LinuxServer-CI bedc4db6be Bot Updating Package Versions 2019-07-23 01:12:21 -04:00
LinuxServer-CI 66c4ee250c Bot Updating Package Versions 2019-07-16 06:11:32 +01:00
LinuxServer-CI 7c7f667b8e Bot Updating Package Versions 2019-07-09 05:13:13 +00:00
LinuxServer-CI c54e1a663b Bot Updating Templated Files 2019-07-09 06:10:14 +01:00
LinuxServer-CI 16cf4bcc90 Bot Updating Package Versions 2019-07-02 01:11:15 -04:00
LinuxServer-CI bd3d3b61d0 Bot Updating Package Versions 2019-06-25 07:11:51 +02:00
LinuxServer-CI d5cafa54b1 Bot Updating Package Versions 2019-06-18 01:12:59 -04:00
thelamer db468a5bfa display env var as optional 2019-06-16 15:16:07 -07:00
Mateusz FurdynaandRyan Kuba 5456827b6b Fix umask - get umask from environment
Makes it consistent with other linuxserver.io images.
2019-06-16 15:16:07 -07:00
LinuxServer-CI 6ab9f20607 Bot Updating Package Versions 2019-06-11 01:11:07 -04:00
chbmbandGitHub 23bbe2744e Merge pull request #48 from thelamer/master
Re-word preview tag to emphasize dangers of using
2019-06-05 20:43:43 +01:00
thelamer e7183959cd styling 2019-06-05 12:32:56 -07:00
thelamer 3368a64870 update preview release to emphasize the testing nature of the preview release 2019-06-05 12:32:09 -07:00
LinuxServer-CI 2259a92c9c Bot Updating Templated Files 2019-06-04 01:10:06 -04:00
LinuxServer-CI 6f49692d3e Bot Updating Package Versions 2019-05-23 13:34:09 -04:00
LinuxServer-CI 4f2a89a0db Bot Updating Templated Files 2019-05-23 13:29:51 -04:00
LinuxServer-CI 132823de16 Bot Updating Templated Files 2019-05-23 19:28:21 +02:00
LinuxServer-CI 0da5adb21c Bot Updating Package Versions 2019-05-19 17:44:32 +02:00
saargandGitHub 39efcec0eb Merge pull request #45 from thelamer/master
rebase to bionic
2019-05-19 17:39:52 +02:00
thelamer 0329db2d02 adding 5.14 branch reference to main docs 2019-05-17 16:18:36 -07:00
thelamer e534215e8e rebase to bionic 2019-05-10 12:42:58 -07:00
aptalcaandGitHub ff0b492f34 Merge pull request #44 from thelamer/master
add preview branch to docs
2019-05-09 00:33:01 -04:00
thelamer 4b858a02a4 add preview branch to docs 2019-05-08 20:28:12 -07:00
LinuxServer-CI f7b38b91bf Bot Updating Package Versions 2019-05-05 17:44:15 +01:00
LinuxServer-CI e7e1c3abed Bot Updating Templated Files 2019-05-05 16:42:05 +00:00
LinuxServer-CI bec3c8ac20 Bot Updating Package Versions 2019-04-30 01:11:39 -04:00
LinuxServer-CI f9680d1807 Bot Updating Package Versions 2019-04-23 01:11:57 -04:00
LinuxServer-CI 37e0a899db Bot Updating Package Versions 2019-04-16 01:13:11 -04:00
LinuxServer-CI 53de501c49 Bot Updating Package Versions 2019-04-09 01:11:52 -04:00
saargandGitHub 7c400206dc Merge pull request #42 from thelamer/master
switch to new tags style readme
2019-03-28 08:05:40 +01:00
thelamer 656a4a15b2 switch to new tags style readme 2019-03-27 20:23:58 -07:00
LinuxServer-CI 07529438f5 Bot Updating Package Versions 2019-03-24 15:57:12 -04:00
aptalcaandGitHub b9c4a0edc1 Merge pull request #40 from thelamer/master
Switching to new Base images, shift to arm32v7 tag.
2019-03-24 15:53:09 -04:00
thelamer 0e8e74870f Switching to new Base images, shift to arm32v7 tag. 2019-03-23 16:46:09 -07:00
LinuxServer-CI 4e5e64cc4a Bot Updating Package Versions 2019-03-19 02:13:25 -04:00
LinuxServer-CI 6c0b9afbb3 Bot Updating Package Versions 2019-03-12 06:12:16 +00:00
LinuxServer-CI 776f69762c Bot Updating Templated Files 2019-03-12 02:09:42 -04:00
LinuxServer-CI cc85574bff Bot Updating Templated Files 2019-03-06 13:42:07 +00:00
LinuxServer-CI b5ed4b1737 Bot Updating Templated Files 2019-03-05 01:09:43 -05:00
LinuxServer-CI 166dc42cd7 Bot Updating Package Versions 2019-02-26 06:16:33 +00:00
LinuxServer-CI b8bd3ecdb2 Bot Updating Templated Files 2019-02-26 06:09:34 +00:00
LinuxServer-CI 1d066b6111 Bot Updating Package Versions 2019-02-12 06:18:24 +00:00
LinuxServer-CI fa105e3587 Bot Updating Templated Files 2019-02-12 06:09:33 +00:00
LinuxServer-CI 760570661a Bot Updating Package Versions 2019-01-30 21:12:50 +00:00
aptalcaandGitHub 9daf2e8de0 Merge pull request #32 from linuxserver/pipeline
Pipeline
2019-01-30 16:10:33 -05:00
thelamer 8fbc1e2676 updating branch with current pipeline build logic in prep for PR 2019-01-20 20:21:25 -08:00
26 changed files with 872 additions and 802 deletions
Executable → Regular
View File
Executable → Regular
+5 -5
View File
@@ -6,7 +6,7 @@
* Read, and fill the Pull Request template
* 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)
* 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://linuxserver.io/discord)
## Common files
@@ -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/nightly/readme-vars.yml).
Instead edit the [readme-vars.yml](https://github.com/linuxserver/docker-radarr/edit/develop/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)
@@ -105,17 +105,17 @@ docker build \
-t linuxserver/radarr:latest .
```
The ARM variants can be built on x86_64 hardware using `multiarch/qemu-user-static`
The ARM variants can be built on x86_64 hardware and vice versa using `lscr.io/linuxserver/qemu-static`
```bash
docker run --rm --privileged multiarch/qemu-user-static:register --reset
docker run --rm --privileged lscr.io/linuxserver/qemu-static --reset
```
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/nightly/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/develop/root), add an entry to the changelog
```yml
changelogs:
Executable → Regular
View File
+1 -1
View File
@@ -1,7 +1,7 @@
blank_issues_enabled: false
contact_links:
- name: Discord chat support
url: https://discord.gg/YWrKVTn
url: https://linuxserver.io/discord
about: Realtime support / chat with the community and the team.
- name: Discourse discussion forum
View File
View File
+1 -1
View File
@@ -21,7 +21,7 @@
------------------------------
- [ ] 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
- [ ] 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
------------------------------
+3
View File
@@ -8,6 +8,9 @@ on:
pull_request_review:
types: [submitted,edited,dismissed]
permissions:
contents: read
jobs:
manage-project:
permissions:
+3
View File
@@ -4,6 +4,9 @@ on:
- cron: '58 22 * * *'
workflow_dispatch:
permissions:
contents: read
jobs:
stale:
permissions:
+57 -27
View File
@@ -3,56 +3,86 @@ name: External Trigger Main
on:
workflow_dispatch:
permissions:
contents: read
jobs:
external-trigger-nightly:
external-trigger-develop:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.1.1
- name: External Trigger
if: github.ref == 'refs/heads/nightly'
if: github.ref == 'refs/heads/develop'
env:
SKIP_EXTERNAL_TRIGGER: ${{ vars.SKIP_EXTERNAL_TRIGGER }}
run: |
printf "# External trigger for docker-radarr\n\n" >> $GITHUB_STEP_SUMMARY
if grep -q "^radarr_nightly" <<< "${SKIP_EXTERNAL_TRIGGER}"; then
if grep -q "^radarr_develop_" <<< "${SKIP_EXTERNAL_TRIGGER}"; then
echo "> [!NOTE]" >> $GITHUB_STEP_SUMMARY
echo "> Github organizational variable \`SKIP_EXTERNAL_TRIGGER\` contains \`radarr_develop_\`; will skip trigger if version matches." >> $GITHUB_STEP_SUMMARY
elif grep -q "^radarr_develop" <<< "${SKIP_EXTERNAL_TRIGGER}"; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> Github organizational variable \`SKIP_EXTERNAL_TRIGGER\` contains \`radarr_nightly\`; skipping trigger." >> $GITHUB_STEP_SUMMARY
echo "> Github organizational variable \`SKIP_EXTERNAL_TRIGGER\` contains \`radarr_develop\`; skipping trigger." >> $GITHUB_STEP_SUMMARY
exit 0
fi
echo "> [!NOTE]" >> $GITHUB_STEP_SUMMARY
echo "> External trigger running off of nightly branch. To disable this trigger, add \`radarr_nightly\` into the Github organizational variable \`SKIP_EXTERNAL_TRIGGER\`." >> $GITHUB_STEP_SUMMARY
echo "> External trigger running off of develop branch. To disable this trigger, add \`radarr_develop\` into the Github organizational variable \`SKIP_EXTERNAL_TRIGGER\`." >> $GITHUB_STEP_SUMMARY
printf "\n## Retrieving external version\n\n" >> $GITHUB_STEP_SUMMARY
EXT_RELEASE=$(curl -sL https://radarr.servarr.com/v1/update/nightly/changes?runtime=netcore%26os=linux | jq -r '.[0].version')
EXT_RELEASE=$(curl -sL https://radarr.servarr.com/v1/update/develop/changes?runtime=netcore%26os=linuxmusl | jq -r '.[0].version')
echo "Type is \`custom_version_command\`" >> $GITHUB_STEP_SUMMARY
if grep -q "^radarr_develop_${EXT_RELEASE}" <<< "${SKIP_EXTERNAL_TRIGGER}"; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> Github organizational variable \`SKIP_EXTERNAL_TRIGGER\` matches current external release; skipping trigger." >> $GITHUB_STEP_SUMMARY
exit 0
fi
if [ -z "${EXT_RELEASE}" ] || [ "${EXT_RELEASE}" == "null" ]; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> Can't retrieve external version, exiting" >> $GITHUB_STEP_SUMMARY
FAILURE_REASON="Can't retrieve external version for radarr branch nightly"
FAILURE_REASON="Can't retrieve external version for radarr branch develop"
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"}],
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
exit 1
fi
EXT_RELEASE=$(echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g')
echo "External version: \`${EXT_RELEASE}\`" >> $GITHUB_STEP_SUMMARY
EXT_RELEASE_SANITIZED=$(echo ${EXT_RELEASE} | sed 's/[~,%@+;:/]//g')
echo "Sanitized external version: \`${EXT_RELEASE_SANITIZED}\`" >> $GITHUB_STEP_SUMMARY
echo "Retrieving last pushed version" >> $GITHUB_STEP_SUMMARY
image="linuxserver/radarr"
tag="nightly"
tag="develop"
token=$(curl -sX GET \
"https://ghcr.io/token?scope=repository%3Alinuxserver%2Fradarr%3Apull" \
| jq -r '.token')
multidigest=$(curl -s \
multidigest=$(curl -s \
--header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
--header "Accept: application/vnd.oci.image.index.v1+json" \
--header "Authorization: Bearer ${token}" \
"https://ghcr.io/v2/${image}/manifests/${tag}")
if jq -e '.layers // empty' <<< "${multidigest}" >/dev/null 2>&1; then
# If there's a layer element it's a single-arch manifest so just get that digest
digest=$(jq -r '.config.digest' <<< "${multidigest}")
else
# Otherwise it's multi-arch or has manifest annotations
if jq -e '.manifests[]?.annotations // empty' <<< "${multidigest}" >/dev/null 2>&1; then
# Check for manifest annotations and delete if found
multidigest=$(jq 'del(.manifests[] | select(.annotations))' <<< "${multidigest}")
fi
if [[ $(jq '.manifests | length' <<< "${multidigest}") -gt 1 ]]; then
# If there's still more than one digest, it's multi-arch
multidigest=$(jq -r ".manifests[] | select(.platform.architecture == \"amd64\").digest?" <<< "${multidigest}")
else
# Otherwise it's single arch
multidigest=$(jq -r ".manifests[].digest?" <<< "${multidigest}")
fi
if digest=$(curl -s \
--header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
--header "Accept: application/vnd.oci.image.manifest.v1+json" \
--header "Authorization: Bearer ${token}" \
"https://ghcr.io/v2/${image}/manifests/${tag}" \
| jq -r 'first(.manifests[].digest)')
digest=$(curl -s \
--header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
--header "Authorization: Bearer ${token}" \
"https://ghcr.io/v2/${image}/manifests/${multidigest}" \
| jq -r '.config.digest')
"https://ghcr.io/v2/${image}/manifests/${multidigest}"); then
digest=$(jq -r '.config.digest' <<< "${digest}");
fi
fi
image_info=$(curl -sL \
--header "Authorization: Bearer ${token}" \
"https://ghcr.io/v2/${image}/blobs/${digest}")
@@ -66,35 +96,35 @@ jobs:
if [ -z "${IMAGE_VERSION}" ]; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "Can't retrieve last pushed version, exiting" >> $GITHUB_STEP_SUMMARY
FAILURE_REASON="Can't retrieve last pushed version for radarr tag nightly"
FAILURE_REASON="Can't retrieve last pushed version for radarr tag develop"
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}\`" >> $GITHUB_STEP_SUMMARY
if [ "${EXT_RELEASE}" == "${IMAGE_VERSION}" ]; then
echo "Version \`${EXT_RELEASE}\` already pushed, exiting" >> $GITHUB_STEP_SUMMARY
if [ "${EXT_RELEASE_SANITIZED}" == "${IMAGE_VERSION}" ]; then
echo "Sanitized version \`${EXT_RELEASE_SANITIZED}\` already pushed, exiting" >> $GITHUB_STEP_SUMMARY
exit 0
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/nightly/lastBuild/api/json | jq -r '.building') == "true" ]; then
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/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" >> $GITHUB_STEP_SUMMARY
exit 0
else
if [[ "${artifacts_found}" == "false" ]]; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> New version detected, but not all artifacts are published yet; skipping trigger" >> $GITHUB_STEP_SUMMARY
FAILURE_REASON="New version ${EXT_RELEASE} for radarr tag nightly is detected, however not all artifacts are uploaded to upstream release yet. Will try again later."
FAILURE_REASON="New version ${EXT_RELEASE} for radarr tag develop is detected, however not all artifacts are uploaded to upstream release yet. Will try again later."
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 9802903,
"description": "**Trigger Failed** \n**Reason:** '"${FAILURE_REASON}"' \n"}],
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
else
printf "\n## Trigger new build\n\n" >> $GITHUB_STEP_SUMMARY
echo "New version \`${EXT_RELEASE}\` found; old version was \`${IMAGE_VERSION}\`. Triggering new build" >> $GITHUB_STEP_SUMMARY
if "${artifacts_found}" == "true" ]]; then
echo "New sanitized version \`${EXT_RELEASE_SANITIZED}\` found; old version was \`${IMAGE_VERSION}\`. Triggering new build" >> $GITHUB_STEP_SUMMARY
if [[ "${artifacts_found}" == "true" ]]; then
echo "All artifacts seem to be uploaded." >> $GITHUB_STEP_SUMMARY
fi
response=$(curl -iX POST \
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/nightly/buildWithParameters?PACKAGE_CHECK=false \
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/develop/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'})" >> $GITHUB_STEP_SUMMARY
echo "Sleeping 10 seconds until job starts" >> $GITHUB_STEP_SUMMARY
@@ -109,7 +139,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 nightly. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE}"
TRIGGER_REASON="A version change was detected for radarr tag develop. Old version:${IMAGE_VERSION} New version:${EXT_RELEASE_SANITIZED}"
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 }}
@@ -5,6 +5,9 @@ on:
- cron: '25 * * * *'
workflow_dispatch:
permissions:
contents: read
jobs:
external-trigger-scheduler:
runs-on: ubuntu-latest
Executable → Regular
+7 -1
View File
@@ -2,12 +2,18 @@ name: Greetings
on: [pull_request_target, issues]
permissions:
contents: read
jobs:
greeting:
permissions:
issues: write
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/first-interaction@v1
with:
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)!'
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)!'
repo-token: ${{ secrets.GITHUB_TOKEN }}
@@ -5,6 +5,9 @@ on:
- cron: '49 16 * * 0'
workflow_dispatch:
permissions:
contents: read
jobs:
package-trigger-scheduler:
runs-on: ubuntu-latest
@@ -27,9 +30,18 @@ jobs:
fi
printf "\n## Evaluating \`%s\`\n\n" ${br} >> $GITHUB_STEP_SUMMARY
JENKINS_VARS=$(curl -sX GET https://raw.githubusercontent.com/linuxserver/docker-radarr/${br}/jenkins-vars.yml)
if [[ "${br}" == $(yq -r '.ls_branch' <<< "${JENKINS_VARS}") ]]; then
if ! curl -sfX GET https://raw.githubusercontent.com/linuxserver/docker-radarr/${br}/Jenkinsfile >/dev/null 2>&1; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> No Jenkinsfile found. Branch is either deprecated or is an early dev branch." >> $GITHUB_STEP_SUMMARY
skipped_branches="${skipped_branches}${br} "
elif [[ "${br}" == $(yq -r '.ls_branch' <<< "${JENKINS_VARS}") ]]; then
echo "Branch appears to be live; checking workflow." >> $GITHUB_STEP_SUMMARY
if [[ $(yq -r '.skip_package_check' <<< "${JENKINS_VARS}") == "true" ]]; then
README_VARS=$(curl -sX GET https://raw.githubusercontent.com/linuxserver/docker-radarr/${br}/readme-vars.yml)
if [[ $(yq -r '.project_deprecation_status' <<< "${README_VARS}") == "true" ]]; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> Branch appears to be deprecated; skipping trigger." >> $GITHUB_STEP_SUMMARY
skipped_branches="${skipped_branches}${br} "
elif [[ $(yq -r '.skip_package_check' <<< "${JENKINS_VARS}") == "true" ]]; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> Skipping branch ${br} due to \`skip_package_check\` being set in \`jenkins-vars.yml\`." >> $GITHUB_STEP_SUMMARY
skipped_branches="${skipped_branches}${br} "
@@ -37,7 +49,7 @@ jobs:
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> Github organizational variable \`SKIP_PACKAGE_TRIGGER\` contains \`radarr_${br}\`; skipping trigger." >> $GITHUB_STEP_SUMMARY
skipped_branches="${skipped_branches}${br} "
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/${br}/lastBuild/api/json | jq -r '.building') == "true" ]; then
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/${br}/lastBuild/api/json | jq -r '.building' 2>/dev/null) == "true" ]; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> There already seems to be an active build on Jenkins; skipping package trigger for ${br}" >> $GITHUB_STEP_SUMMARY
skipped_branches="${skipped_branches}${br} "
@@ -49,6 +61,11 @@ jobs:
response=$(curl -iX POST \
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-radarr/job/${br}/buildWithParameters?PACKAGE_CHECK=true \
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} | grep -i location | sed "s|^[L|l]ocation: \(.*\)|\1|")
if [[ -z "${response}" ]]; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> Jenkins build could not be triggered. Skipping branch."
continue
fi
echo "Jenkins [job queue url](${response%$'\r'})" >> $GITHUB_STEP_SUMMARY
echo "Sleeping 10 seconds until job starts" >> $GITHUB_STEP_SUMMARY
sleep 10
@@ -56,11 +73,14 @@ jobs:
buildurl="${buildurl%$'\r'}"
echo "Jenkins job [build url](${buildurl})" >> $GITHUB_STEP_SUMMARY
echo "Attempting to change the Jenkins job description" >> $GITHUB_STEP_SUMMARY
curl -iX POST \
if ! curl -ifX POST \
"${buildurl}submitDescription" \
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} \
--data-urlencode "description=GHA package trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
--data-urlencode "Submit=Submit"
--data-urlencode "Submit=Submit"; then
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
echo "> Unable to change the Jenkins job description."
fi
sleep 20
fi
else
@@ -70,13 +90,14 @@ jobs:
if [[ -n "${triggered_branches}" ]] || [[ -n "${skipped_branches}" ]]; then
if [[ -n "${triggered_branches}" ]]; then
NOTIFY_BRANCHES="**Triggered:** ${triggered_branches} \n"
NOTIFY_BUILD_URL="**Build URL:** https://ci.linuxserver.io/blue/organizations/jenkins/Docker-Pipeline-Builders%2Fdocker-radarr/activity/ \n"
echo "**** Package check build(s) triggered for branch(es): ${triggered_branches} ****"
fi
if [[ -n "${skipped_branches}" ]]; then
NOTIFY_BRANCHES="${NOTIFY_BRANCHES}**Skipped:** ${skipped_branches} \n"
fi
echo "**** Package check build(s) triggered for branch(es): ${triggered_branches} ****"
echo "**** Notifying Discord ****"
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 9802903,
"description": "**Package Check Build(s) Triggered for radarr** \n'"${NOTIFY_BRANCHES}"'**Build URL:** '"https://ci.linuxserver.io/blue/organizations/jenkins/Docker-Pipeline-Builders%2Fdocker-radarr/activity/"' \n"}],
"description": "**Package Check Build(s) for radarr** \n'"${NOTIFY_BRANCHES}"''"${NOTIFY_BUILD_URL}"'"}],
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
fi
View File
+3 -3
View File
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-alpine:3.20
FROM ghcr.io/linuxserver/baseimage-alpine:3.24
# set version label
ARG BUILD_DATE
@@ -10,7 +10,7 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA
LABEL maintainer="Roxedus,thespad"
# environment settings
ARG RADARR_BRANCH="nightly"
ARG RADARR_BRANCH="develop"
ENV XDG_CONFIG_HOME="/config/xdg" \
COMPlus_EnableDiagnostics=0 \
TMPDIR=/run/radarr-temp
@@ -31,7 +31,7 @@ RUN \
/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 \
/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 && \
printf "Linuxserver.io version: ${VERSION}\nBuild-date: ${BUILD_DATE}" > /build_version && \
+3 -3
View File
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.20
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.24
# set version label
ARG BUILD_DATE
@@ -10,7 +10,7 @@ LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DA
LABEL maintainer="Roxedus,thespad"
# environment settings
ARG RADARR_BRANCH="nightly"
ARG RADARR_BRANCH="develop"
ENV XDG_CONFIG_HOME="/config/xdg" \
COMPlus_EnableDiagnostics=0 \
TMPDIR=/run/radarr-temp
@@ -28,7 +28,7 @@ RUN \
| jq -r '.[0].version'); \
fi && \
curl -o \
/tmp/radarr.tar.gz -L \
/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 \
Vendored
+424 -250
View File
@@ -8,7 +8,7 @@ pipeline {
}
// Input to determine if this is a package check
parameters {
string(defaultValue: 'false', description: 'package check run', name: 'PACKAGE_CHECK')
string(defaultValue: 'false', description: 'package check run', name: 'PACKAGE_CHECK')
}
// Configuration for the variables used for this specific repo
environment {
@@ -32,7 +32,7 @@ pipeline {
CI_WEB='true'
CI_PORT='7878'
CI_SSL='false'
CI_DELAY='120'
CI_DELAY='240'
CI_DOCKERENV=''
CI_AUTH=''
CI_WEBPATH='/system/status'
@@ -56,15 +56,29 @@ pipeline {
steps{
echo "Running on node: ${NODE_NAME}"
sh '''#! /bin/bash
containers=$(docker ps -aq)
echo "Pruning builder"
docker builder prune -f --builder container || :
containers=$(docker ps -q)
if [[ -n "${containers}" ]]; then
docker stop ${containers}
BUILDX_CONTAINER_ID=$(docker ps -qf 'name=buildx_buildkit')
for container in ${containers}; do
if [[ "${container}" == "${BUILDX_CONTAINER_ID}" ]]; then
echo "skipping buildx container in docker stop"
else
echo "Stopping container ${container}"
docker stop ${container}
fi
done
fi
docker system prune -af --volumes || : '''
docker system prune -f --volumes || :
docker image prune -af || :
'''
script{
env.EXIT_STATUS = ''
env.CI_TEST_ATTEMPTED = ''
env.PUSH_ATTEMPTED = ''
env.LS_RELEASE = sh(
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' || : ''',
script: '''docker run --rm quay.io/skopeo/stable:v1 inspect docker://ghcr.io/${LS_USER}/${CONTAINER_NAME}:develop 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' ''',
@@ -82,7 +96,11 @@ pipeline {
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 .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 ./root/donate.txt'
if ( env.SYFT_IMAGE_TAG == null ) {
env.SYFT_IMAGE_TAG = 'latest'
}
}
echo "Using syft image tag ${SYFT_IMAGE_TAG}"
sh '''#! /bin/bash
echo "The default github branch detected as ${GH_DEFAULT_BRANCH}" '''
script{
@@ -93,7 +111,7 @@ pipeline {
script{
env.LS_TAG_NUMBER = sh(
script: '''#! /bin/bash
tagsha=$(git rev-list -n 1 nightly-${LS_RELEASE} 2>/dev/null)
tagsha=$(git rev-list -n 1 develop-${LS_RELEASE} 2>/dev/null)
if [ "${tagsha}" == "${COMMIT_SHA}" ]; then
echo ${LS_RELEASE_NUMBER}
elif [ -z "${GIT_COMMIT}" ]; then
@@ -131,7 +149,7 @@ pipeline {
steps{
script{
env.EXT_RELEASE = sh(
script: ''' curl -sL https://radarr.servarr.com/v1/update/nightly/changes?runtime=netcore%26os=linux | jq -r '.[0].version' ''',
script: ''' curl -sL https://radarr.servarr.com/v1/update/develop/changes?runtime=netcore%26os=linuxmusl | jq -r '.[0].version' ''',
returnStdout: true).trim()
env.RELEASE_LINK = 'custom_command'
}
@@ -171,10 +189,10 @@ pipeline {
}
}
}
// If this is a nightly build use live docker endpoints
// If this is a develop build use live docker endpoints
stage("Set ENV live build"){
when {
branch "nightly"
branch "develop"
environment name: 'CHANGE_ID', value: ''
}
steps {
@@ -184,20 +202,22 @@ pipeline {
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-nightly-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-nightly-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.CI_TAGS = 'amd64-develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER + '|arm64v8-develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
} else {
env.CI_TAGS = 'nightly-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.CI_TAGS = 'develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
}
env.VERSION_TAG = env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.META_TAG = 'nightly-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.EXT_RELEASE_TAG = 'nightly-version-' + env.EXT_RELEASE_CLEAN
env.META_TAG = 'develop-' + env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
env.EXT_RELEASE_TAG = 'develop-version-' + env.EXT_RELEASE_CLEAN
env.BUILDCACHE = 'docker.io/lsiodev/buildcache,registry.gitlab.com/linuxserver.io/docker-jenkins-builder/lsiodev-buildcache,ghcr.io/linuxserver/lsiodev-buildcache,quay.io/linuxserver.io/lsiodev-buildcache'
env.CITEST_IMAGETAG = 'latest'
}
}
}
// If this is a dev build use dev docker endpoints
stage("Set ENV dev build"){
when {
not {branch "nightly"}
not {branch "develop"}
environment name: 'CHANGE_ID', value: ''
}
steps {
@@ -207,14 +227,16 @@ pipeline {
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-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
env.CI_TAGS = 'amd64-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
} else {
env.CI_TAGS = 'nightly-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.CI_TAGS = 'develop-' + 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 = 'nightly-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA
env.EXT_RELEASE_TAG = 'nightly-version-' + env.EXT_RELEASE_CLEAN
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.DOCKERHUB_LINK = 'https://hub.docker.com/r/' + env.DEV_DOCKERHUB_IMAGE + '/tags/'
env.BUILDCACHE = 'docker.io/lsiodev/buildcache,registry.gitlab.com/linuxserver.io/docker-jenkins-builder/lsiodev-buildcache,ghcr.io/linuxserver/lsiodev-buildcache,quay.io/linuxserver.io/lsiodev-buildcache'
env.CITEST_IMAGETAG = 'develop'
}
}
}
@@ -230,15 +252,17 @@ pipeline {
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-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
env.CI_TAGS = 'amd64-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST + '|arm64v8-develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
} else {
env.CI_TAGS = 'nightly-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
env.CI_TAGS = 'develop-' + 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 + '-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.META_TAG = 'develop-' + env.EXT_RELEASE_CLEAN + '-pkg-' + env.PACKAGE_TAG + '-dev-' + env.COMMIT_SHA + '-pr-' + env.PULL_REQUEST
env.EXT_RELEASE_TAG = 'develop-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/'
env.BUILDCACHE = 'docker.io/lsiodev/buildcache,registry.gitlab.com/linuxserver.io/docker-jenkins-builder/lsiodev-buildcache,ghcr.io/linuxserver/lsiodev-buildcache,quay.io/linuxserver.io/lsiodev-buildcache'
env.CITEST_IMAGETAG = 'develop'
}
}
}
@@ -261,7 +285,7 @@ pipeline {
-v ${WORKSPACE}:/mnt \
-e AWS_ACCESS_KEY_ID=\"${S3_KEY}\" \
-e AWS_SECRET_ACCESS_KEY=\"${S3_SECRET}\" \
ghcr.io/linuxserver/baseimage-alpine:3.20 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
ghcr.io/linuxserver/baseimage-alpine:3.23 s6-envdir -fn -- /var/run/s6/container_environment /bin/bash -c "\
apk add --no-cache python3 && \
python3 -m venv /lsiopy && \
pip install --no-cache-dir -U pip && \
@@ -273,7 +297,7 @@ pipeline {
// Use helper containers to render templated files
stage('Update-Templates') {
when {
branch "nightly"
branch "develop"
environment name: 'CHANGE_ID', value: ''
expression {
env.CONTAINER_NAME != null
@@ -285,24 +309,24 @@ pipeline {
TEMPDIR=$(mktemp -d)
docker pull ghcr.io/linuxserver/jenkins-builder:latest
# Cloned repo paths for templating:
# ${TEMPDIR}/docker-${CONTAINER_NAME}: Cloned branch nightly of ${LS_USER}/${LS_REPO} for running the jenkins builder on
# ${TEMPDIR}/repo/${LS_REPO}: Cloned branch nightly of ${LS_USER}/${LS_REPO} for commiting various templated file changes and pushing back to Github
# ${TEMPDIR}/docker-${CONTAINER_NAME}: Cloned branch develop of ${LS_USER}/${LS_REPO} for running the jenkins builder on
# ${TEMPDIR}/repo/${LS_REPO}: Cloned branch develop of ${LS_USER}/${LS_REPO} for commiting various templated file changes and pushing back to Github
# ${TEMPDIR}/docs/docker-documentation: Cloned docs repo for pushing docs updates to Github
# ${TEMPDIR}/unraid/docker-templates: Cloned docker-templates repo to check for logos
# ${TEMPDIR}/unraid/templates: Cloned templates repo for commiting unraid template changes and pushing back to Github
git clone --branch nightly --depth 1 https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/docker-${CONTAINER_NAME}
git clone --branch develop --depth 1 https://github.com/${LS_USER}/${LS_REPO}.git ${TEMPDIR}/docker-${CONTAINER_NAME}
docker run --rm -v ${TEMPDIR}/docker-${CONTAINER_NAME}:/tmp -e LOCAL=true -e PUID=$(id -u) -e PGID=$(id -g) ghcr.io/linuxserver/jenkins-builder:latest
echo "Starting 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 nightly
git checkout -f develop
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/Jenkinsfile ${TEMPDIR}/repo/${LS_REPO}/
git add Jenkinsfile
git commit -m 'Bot Updating Templated Files'
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git nightly
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git nightly
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
echo "Updating Jenkinsfile and exiting build, new one will trigger based on commit"
rm -Rf ${TEMPDIR}
@@ -321,13 +345,13 @@ 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 nightly
git checkout -f develop
for i in ${TEMPLATES_TO_DELETE}; do
git rm "${i}"
done
git commit -m 'Bot Updating Templated Files'
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git nightly
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git nightly
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
echo "Deleting old/deprecated templates and exiting build, new one will trigger based on commit"
rm -Rf ${TEMPDIR}
@@ -335,6 +359,35 @@ pipeline {
else
echo "No templates to delete"
fi
echo "Starting Stage 2.5 - Update init diagram"
if ! grep -q 'init_diagram:' readme-vars.yml; then
echo "Adding the key 'init_diagram' to readme-vars.yml"
sed -i '\\|^#.*changelog.*$|d' readme-vars.yml
sed -i 's|^changelogs:|# init diagram\\ninit_diagram:\\n\\n# changelog\\nchangelogs:|' readme-vars.yml
fi
mkdir -p ${TEMPDIR}/d2
docker run --rm -v ${TEMPDIR}/d2:/output -e PUID=$(id -u) -e PGID=$(id -g) -e RAW="true" ghcr.io/linuxserver/d2-builder:latest ${CONTAINER_NAME}:develop
ls -al ${TEMPDIR}/d2
yq -ei ".init_diagram |= load_str(\\"${TEMPDIR}/d2/${CONTAINER_NAME}-develop.d2\\")" readme-vars.yml
if [[ $(md5sum readme-vars.yml | cut -c1-8) != $(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/readme-vars.yml | cut -c1-8) ]]; then
echo "'init_diagram' has been updated. Updating repo and exiting build, new one will trigger based on commit."
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
cp ${WORKSPACE}/readme-vars.yml ${TEMPDIR}/repo/${LS_REPO}/readme-vars.yml
git add readme-vars.yml
git commit -m 'Bot Updating Templated Files'
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
echo "Updating templates and exiting build, new one will trigger based on commit"
rm -Rf ${TEMPDIR}
exit 0
else
echo "false" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
echo "Init diagram is unchanged"
fi
echo "Starting Stage 3 - Update templates"
CURRENTHASH=$(grep -hs ^ ${TEMPLATED_FILES} | md5sum | cut -c1-8)
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
@@ -343,7 +396,7 @@ 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 nightly
git checkout -f develop
cd ${TEMPDIR}/docker-${CONTAINER_NAME}
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/workflows
mkdir -p ${TEMPDIR}/repo/${LS_REPO}/.github/ISSUE_TEMPLATE
@@ -356,8 +409,8 @@ pipeline {
fi
git add readme-vars.yml ${TEMPLATED_FILES}
git commit -m 'Bot Updating Templated Files'
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git nightly
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git nightly
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
echo "true" > /tmp/${COMMIT_SHA}-${BUILD_NUMBER}
echo "Updating templates and exiting build, new one will trigger based on commit"
rm -Rf ${TEMPDIR}
@@ -458,7 +511,7 @@ pipeline {
// Exit the build if the Templated files were just updated
stage('Template-exit') {
when {
branch "nightly"
branch "develop"
environment name: 'CHANGE_ID', value: ''
environment name: 'FILES_UPDATED', value: 'true'
expression {
@@ -471,10 +524,10 @@ pipeline {
}
}
}
// If this is a nightly build check the S6 service file perms
// If this is a develop build check the S6 service file perms
stage("Check S6 Service file Permissions"){
when {
branch "nightly"
branch "develop"
environment name: 'CHANGE_ID', value: ''
environment name: 'EXIT_STATUS', value: ''
}
@@ -543,8 +596,45 @@ pipeline {
--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} --platform=linux/amd64 \
--provenance=false --sbom=false \
--provenance=true --sbom=true --builder=container --load \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
sh '''#! /bin/bash
set -e
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
for i in "${CACHE[@]}"; do
docker tag ${IMAGE}:${META_TAG} ${i}:amd64-${COMMIT_SHA}-${BUILD_NUMBER}
done
'''
withCredentials([
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
usernameVariable: 'QUAYUSER',
passwordVariable: 'QUAYPASS'
]
]) {
retry_backoff(5,5) {
sh '''#! /bin/bash
set -e
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --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 [[ "${PACKAGE_CHECK}" != "true" ]]; then
declare -A pids
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
for i in "${CACHE[@]}"; do
docker push ${i}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} &
pids[$!]="$i"
done
for p in "${!pids[@]}"; do
wait "$p" || { [[ "${pids[$p]}" != *"quay.io"* ]] && exit 1; }
done
fi
'''
}
}
}
}
// Build MultiArch Docker containers for push to LS Repo
@@ -575,8 +665,45 @@ pipeline {
--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} --platform=linux/amd64 \
--provenance=false --sbom=false \
--provenance=true --sbom=true --builder=container --load \
--build-arg ${BUILD_VERSION_ARG}=${EXT_RELEASE} --build-arg VERSION=\"${VERSION_TAG}\" --build-arg BUILD_DATE=${GITHUB_DATE} ."
sh '''#! /bin/bash
set -e
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
for i in "${CACHE[@]}"; do
docker tag ${IMAGE}:amd64-${META_TAG} ${i}:amd64-${COMMIT_SHA}-${BUILD_NUMBER}
done
'''
withCredentials([
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
usernameVariable: 'QUAYUSER',
passwordVariable: 'QUAYPASS'
]
]) {
retry_backoff(5,5) {
sh '''#! /bin/bash
set -e
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --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 [[ "${PACKAGE_CHECK}" != "true" ]]; then
declare -A pids
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
for i in "${CACHE[@]}"; do
docker push ${i}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} &
pids[$!]="$i"
done
for p in "${!pids[@]}"; do
wait "$p" || { [[ "${pids[$p]}" != *"quay.io"* ]] && exit 1; }
done
fi
'''
}
}
}
}
stage('Build ARM64') {
@@ -585,10 +712,6 @@ pipeline {
}
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 "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}\" \
@@ -604,18 +727,52 @@ pipeline {
--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} --platform=linux/arm64 \
--provenance=false --sbom=false \
--provenance=true --sbom=true --builder=container --load \
--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_backoff(5,5) {
sh "docker push ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}"
sh '''#! /bin/bash
set -e
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
for i in "${CACHE[@]}"; do
docker tag ${IMAGE}:arm64v8-${META_TAG} ${i}:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER}
done
'''
withCredentials([
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
usernameVariable: 'QUAYUSER',
passwordVariable: 'QUAYPASS'
]
]) {
retry_backoff(5,5) {
sh '''#! /bin/bash
set -e
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --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 [[ "${PACKAGE_CHECK}" != "true" ]]; then
declare -A pids
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
for i in "${CACHE[@]}"; do
docker push ${i}:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} &
pids[$!]="$i"
done
for p in "${!pids[@]}"; do
wait "$p" || { [[ "${pids[$p]}" != *"quay.io"* ]] && exit 1; }
done
fi
'''
}
}
sh '''#! /bin/bash
containers=$(docker ps -aq)
if [[ -n "${containers}" ]]; then
docker stop ${containers}
fi
docker system prune -af --volumes || : '''
docker system prune -f --volumes || :
docker image prune -af || :
'''
}
}
}
@@ -623,7 +780,7 @@ pipeline {
// Take the image we just built and dump package versions for comparison
stage('Update-packages') {
when {
branch "nightly"
branch "develop"
environment name: 'CHANGE_ID', value: ''
environment name: 'EXIT_STATUS', value: ''
}
@@ -640,20 +797,20 @@ pipeline {
docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v ${TEMPDIR}:/tmp \
ghcr.io/anchore/syft:latest \
ghcr.io/anchore/syft:${SYFT_IMAGE_TAG} \
${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 nightly
git --git-dir ${TEMPDIR}/${LS_REPO}/.git checkout -f develop
cp ${TEMPDIR}/package_versions.txt ${TEMPDIR}/${LS_REPO}/
cd ${TEMPDIR}/${LS_REPO}/
wait
git add package_versions.txt
git commit -m 'Bot Updating Package Versions'
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git nightly
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git nightly
git pull https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
git push https://LinuxServer-CI:${GITHUB_TOKEN}@github.com/${LS_USER}/${LS_REPO}.git develop
echo "true" > /tmp/packages-${COMMIT_SHA}-${BUILD_NUMBER}
echo "Package tag updated, stopping build process"
else
@@ -671,7 +828,7 @@ pipeline {
// Exit the build if the package file was just updated
stage('PACKAGE-exit') {
when {
branch "nightly"
branch "develop"
environment name: 'CHANGE_ID', value: ''
environment name: 'PACKAGE_UPDATED', value: 'true'
environment name: 'EXIT_STATUS', value: ''
@@ -685,7 +842,7 @@ pipeline {
// Exit the build if this is just a package check and there are no changes to push
stage('PACKAGECHECK-exit') {
when {
branch "nightly"
branch "develop"
environment name: 'CHANGE_ID', value: ''
environment name: 'PACKAGE_UPDATED', value: 'false'
environment name: 'EXIT_STATUS', value: ''
@@ -716,6 +873,7 @@ 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'
env.CI_TEST_ATTEMPTED = 'true'
}
sh '''#! /bin/bash
set -e
@@ -727,7 +885,7 @@ pipeline {
CI_DOCKERENV="LSIO_FIRST_PARTY=true"
fi
fi
docker pull ghcr.io/linuxserver/ci:latest
docker pull ghcr.io/linuxserver/ci:${CITEST_IMAGETAG}
if [ "${MULTIARCH}" == "true" ]; then
docker pull ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} --platform=arm64
docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
@@ -739,7 +897,7 @@ pipeline {
-e DOCKER_LOGS_TIMEOUT=\"${CI_DELAY}\" \
-e TAGS=\"${CI_TAGS}\" \
-e META_TAG=\"${META_TAG}\" \
-e RELEASE_TAG=\"nightly\" \
-e RELEASE_TAG=\"develop\" \
-e PORT=\"${CI_PORT}\" \
-e SSL=\"${CI_SSL}\" \
-e BASE=\"${DIST_IMAGE}\" \
@@ -750,7 +908,10 @@ pipeline {
-e WEB_AUTH=\"${CI_AUTH}\" \
-e WEB_PATH=\"${CI_WEBPATH}\" \
-e NODE_NAME=\"${NODE_NAME}\" \
-t ghcr.io/linuxserver/ci:latest \
-e SYFT_IMAGE_TAG=\"${CI_SYFT_IMAGE_TAG:-${SYFT_IMAGE_TAG}}\" \
-e COMMIT_SHA=\"${COMMIT_SHA}\" \
-e BUILD_NUMBER=\"${BUILD_NUMBER}\" \
-t ghcr.io/linuxserver/ci:${CITEST_IMAGETAG} \
python3 test_build.py'''
}
}
@@ -765,37 +926,28 @@ pipeline {
environment name: 'EXIT_STATUS', value: ''
}
steps {
withCredentials([
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
usernameVariable: 'QUAYUSER',
passwordVariable: 'QUAYPASS'
]
]) {
retry_backoff(5,5) {
sh '''#! /bin/bash
set -e
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --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
for PUSHIMAGE in "${GITHUBIMAGE}" "${GITLABIMAGE}" "${QUAYIMAGE}" "${IMAGE}"; do
docker tag ${IMAGE}:${META_TAG} ${PUSHIMAGE}:${META_TAG}
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:nightly
docker tag ${PUSHIMAGE}:${META_TAG} ${PUSHIMAGE}:${EXT_RELEASE_TAG}
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
script{
env.PUSH_ATTEMPTED = 'true'
}
retry_backoff(5,5) {
sh '''#! /bin/bash
set -e
for PUSHIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
[[ ${PUSHIMAGE%%/*} =~ \\. ]] && PUSHIMAGEPLUS="${PUSHIMAGE}" || PUSHIMAGEPLUS="docker.io/${PUSHIMAGE}"
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
for i in "${CACHE[@]}"; do
if [[ "${PUSHIMAGEPLUS}" == "$(cut -d "/" -f1 <<< ${i})"* ]]; then
CACHEIMAGE=${i}
fi
done
'''
}
docker buildx imagetools create --prefer-index=false -t ${PUSHIMAGE}:${META_TAG} -t ${PUSHIMAGE}:develop -t ${PUSHIMAGE}:${EXT_RELEASE_TAG} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${PUSHIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
if [ -n "${SEMVER}" ]; then
docker buildx imagetools create --prefer-index=false -t ${PUSHIMAGE}:${SEMVER} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${PUSHIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
fi
done
'''
}
}
}
@@ -806,64 +958,55 @@ pipeline {
environment name: 'EXIT_STATUS', value: ''
}
steps {
withCredentials([
[
$class: 'UsernamePasswordMultiBinding',
credentialsId: 'Quay.io-Robot',
usernameVariable: 'QUAYUSER',
passwordVariable: 'QUAYPASS'
]
]) {
retry_backoff(5,5) {
sh '''#! /bin/bash
set -e
echo $DOCKERHUB_TOKEN | docker login -u linuxserverci --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:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} --platform=arm64
docker tag ghcr.io/linuxserver/lsiodev-buildcache:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} ${IMAGE}:arm64v8-${META_TAG}
script{
env.PUSH_ATTEMPTED = 'true'
}
retry_backoff(5,5) {
sh '''#! /bin/bash
set -e
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
if [[ "${MANIFESTIMAGE%%/*}" =~ \\. ]]; then
MANIFESTIMAGEPLUS="${MANIFESTIMAGE}"
else
MANIFESTIMAGEPLUS="docker.io/${MANIFESTIMAGE}"
fi
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
docker tag ${IMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG}
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-nightly
docker tag ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:amd64-${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}:amd64-${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}
if [ -n "${SEMVER}" ]; then
docker push ${MANIFESTIMAGE}:amd64-${SEMVER}
docker push ${MANIFESTIMAGE}:arm64v8-${SEMVER}
fi
IFS=',' read -ra CACHE <<< "$BUILDCACHE"
for i in "${CACHE[@]}"; do
if [[ "${MANIFESTIMAGEPLUS}" == "$(cut -d "/" -f1 <<< ${i})"* ]]; then
CACHEIMAGE=${i}
fi
done
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
docker buildx imagetools create -t ${MANIFESTIMAGE}:nightly ${MANIFESTIMAGE}:amd64-nightly ${MANIFESTIMAGE}:arm64v8-nightly
docker buildx imagetools create -t ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG}
docker buildx imagetools create -t ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG}
if [ -n "${SEMVER}" ]; then
docker buildx imagetools create -t ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER}
fi
done
'''
}
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:amd64-${META_TAG} -t ${MANIFESTIMAGE}:amd64-develop -t ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:arm64v8-${META_TAG} -t ${MANIFESTIMAGE}:arm64v8-develop -t ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} ${CACHEIMAGE}:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
if [ -n "${SEMVER}" ]; then
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:amd64-${SEMVER} ${CACHEIMAGE}:amd64-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
docker buildx imagetools create --prefer-index=false -t ${MANIFESTIMAGE}:arm64v8-${SEMVER} ${CACHEIMAGE}:arm64v8-${COMMIT_SHA}-${BUILD_NUMBER} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
fi
done
for MANIFESTIMAGE in "${IMAGE}" "${GITLABIMAGE}" "${GITHUBIMAGE}" "${QUAYIMAGE}"; do
docker buildx imagetools create -t ${MANIFESTIMAGE}:develop ${MANIFESTIMAGE}:amd64-develop ${MANIFESTIMAGE}:arm64v8-develop || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
docker buildx imagetools create -t ${MANIFESTIMAGE}:${META_TAG} ${MANIFESTIMAGE}:amd64-${META_TAG} ${MANIFESTIMAGE}:arm64v8-${META_TAG} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
docker buildx imagetools create -t ${MANIFESTIMAGE}:${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:amd64-${EXT_RELEASE_TAG} ${MANIFESTIMAGE}:arm64v8-${EXT_RELEASE_TAG} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
if [ -n "${SEMVER}" ]; then
docker buildx imagetools create -t ${MANIFESTIMAGE}:${SEMVER} ${MANIFESTIMAGE}:amd64-${SEMVER} ${MANIFESTIMAGE}:arm64v8-${SEMVER} || \
{ if [[ "${MANIFESTIMAGE}" != "${QUAYIMAGE}" ]]; then exit 1; fi; }
fi
done
'''
}
}
}
// If this is a public release tag it in the LS Github
stage('Github-Tag-Push-Release') {
when {
branch "nightly"
branch "develop"
expression {
env.LS_RELEASE != env.EXT_RELEASE_CLEAN + '-ls' + env.LS_TAG_NUMBER
}
@@ -871,36 +1014,54 @@ pipeline {
environment name: 'EXIT_STATUS', value: ''
}
steps {
echo "Pushing New tag for current commit ${META_TAG}"
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 nightly",\
"type": "commit",\
"tagger": {"name": "LinuxServer-CI","email": "ci@linuxserver.io","date": "'${GITHUB_DATE}'"}}' '''
echo "Pushing New release for Tag"
sh '''#! /bin/bash
echo "Auto-generating release notes"
if [ "$(git tag --points-at HEAD)" != "" ]; then
echo "Existing tag points to current commit, suggesting no new LS changes"
AUTO_RELEASE_NOTES="No changes"
else
AUTO_RELEASE_NOTES=$(curl -fsL -H "Authorization: token ${GITHUB_TOKEN}" -H "Accept: application/vnd.github+json" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases/generate-notes \
-d '{"tag_name":"'${META_TAG}'",\
"target_commitish": "develop"}' \
| jq -r '.body' | sed 's|## What.s Changed||')
fi
echo "Pushing New tag for current commit ${META_TAG}"
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",\
"type": "commit",\
"tagger": {"name": "LinuxServer-CI","email": "ci@linuxserver.io","date": "'${GITHUB_DATE}'"}}'
echo "Pushing New release for Tag"
echo "Updating to ${EXT_RELEASE_CLEAN}" > releasebody.json
echo '{"tag_name":"'${META_TAG}'",\
"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
paste -d'\\0' start releasebody.json > releasebody.json.done
curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done'''
jq -n \
--arg tag_name "$META_TAG" \
--arg target_commitish "develop" \
--arg ci_url "${CI_URL:-N/A}" \
--arg ls_notes "$AUTO_RELEASE_NOTES" \
--arg remote_notes "$(cat releasebody.json)" \
'{
"tag_name": $tag_name,
"target_commitish": $target_commitish,
"name": $tag_name,
"body": ("**CI Report:**\\n\\n" + $ci_url + "\\n\\n**LinuxServer Changes:**\\n\\n" + $ls_notes + "\\n\\n**Remote Changes:**\\n\\n" + $remote_notes),
"draft": false,
"prerelease": true }' > releasebody.json.done
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"
branch "develop"
environment name: 'CHANGE_ID', value: ''
environment name: 'EXIT_STATUS', value: ''
}
steps {
echo "Setting up protection for release branch nightly"
echo "Setting up protection for release branch develop"
sh '''#! /bin/bash
curl -H "Authorization: token ${GITHUB_TOKEN}" -X PUT https://api.github.com/repos/${LS_USER}/${LS_REPO}/branches/nightly/protection \
curl -H "Authorization: token ${GITHUB_TOKEN}" -X PUT https://api.github.com/repos/${LS_USER}/${LS_REPO}/branches/develop/protection \
-d $(jq -c . << EOF
{
"required_status_checks": null,
@@ -925,98 +1086,13 @@ EOF
) '''
}
}
// If this is a Pull request send the CI link as a comment on it
stage('Pull Request Comment') {
when {
not {environment name: 'CHANGE_ID', value: ''}
environment name: 'EXIT_STATUS', value: ''
}
steps {
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
'''
}
}
}
/* ######################
Send status to Discord
Comment on PR and Send status to Discord
###################### */
post {
always {
sh '''#!/bin/bash
rm -rf /config/.ssh/id_sign
rm -rf /config/.ssh/id_sign.pub
git config --global --unset gpg.format
git config --global --unset user.signingkey
git config --global --unset commit.gpgsign
'''
script{
script {
env.JOB_DATE = sh(
script: '''date '+%Y-%m-%dT%H:%M:%S%:z' ''',
returnStdout: true).trim()
@@ -1059,15 +1135,113 @@ EOF
"username": "Jenkins"}' ${BUILDS_DISCORD} '''
}
}
script {
if (env.GITHUBIMAGE =~ /lspipepr/){
if (env.CI_TEST_ATTEMPTED == "true" || env.PUSH_ATTEMPTED == "true"){
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 for commit ${COMMIT_SHA:0:7} : \\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 for commit ${COMMIT_SHA:0:7} : \\n\\n\\`${GITHUBIMAGE}:${META_TAG}\\`\\"}"
fi
'''
} else {
sh '''#! /bin/bash
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, the build for PR commit ${COMMIT_SHA:0:7} failed and as a result no CI test was attempted and no images were pushed.\\"}"
'''
}
}
}
sh '''#!/bin/bash
rm -rf /config/.ssh/id_sign
rm -rf /config/.ssh/id_sign.pub
git config --global --unset gpg.format
git config --global --unset user.signingkey
git config --global --unset commit.gpgsign
'''
}
cleanup {
sh '''#! /bin/bash
echo "Performing docker system prune!!"
containers=$(docker ps -aq)
echo "Pruning builder!!"
docker builder prune -f --builder container || :
containers=$(docker ps -q)
if [[ -n "${containers}" ]]; then
docker stop ${containers}
BUILDX_CONTAINER_ID=$(docker ps -qf 'name=buildx_buildkit')
for container in ${containers}; do
if [[ "${container}" == "${BUILDX_CONTAINER_ID}" ]]; then
echo "skipping buildx container in docker stop"
else
echo "Stopping container ${container}"
docker stop ${container}
fi
done
fi
docker system prune -af --volumes || :
docker system prune -f --volumes || :
docker image prune -af || :
'''
cleanWs()
}
Executable → Regular
View File
+38 -26
View File
@@ -1,11 +1,10 @@
<!-- DO NOT EDIT THIS FILE MANUALLY -->
<!-- Please read https://github.com/linuxserver/docker-radarr/blob/nightly/.github/CONTRIBUTING.md -->
<!-- Please read https://github.com/linuxserver/docker-radarr/blob/develop/.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!")
[![Discord](https://img.shields.io/discord/354974912613449730.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Discord&logo=discord)](https://discord.gg/YWrKVTn "realtime support / chat with the community and the team.")
[![Discord](https://img.shields.io/discord/354974912613449730.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Discord&logo=discord)](https://linuxserver.io/discord "realtime support / chat with the community and the team.")
[![Discourse](https://img.shields.io/discourse/https/discourse.linuxserver.io/topics.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&logo=discourse)](https://discourse.linuxserver.io "post on our community forum.")
[![Fleet](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=Fleet)](https://fleet.linuxserver.io "an online web interface which displays all of our maintained images.")
[![GitHub](https://img.shields.io/static/v1.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=linuxserver.io&message=GitHub&logo=github)](https://github.com/linuxserver "view the source for all of our repositories.")
[![Open Collective](https://img.shields.io/opencollective/all/linuxserver.svg?color=94398d&labelColor=555555&logoColor=ffffff&style=for-the-badge&label=Supporters&logo=open%20collective)](https://opencollective.com/linuxserver "please consider helping us by either donating or contributing to our budget")
@@ -20,9 +19,8 @@ The [LinuxServer.io](https://linuxserver.io) team brings you another container r
Find us at:
* [Blog](https://blog.linuxserver.io) - all the things you can do with our containers including How-To guides, opinions and much more!
* [Discord](https://discord.gg/YWrKVTn) - realtime support / chat with the community and the team.
* [Discord](https://linuxserver.io/discord) - realtime support / chat with the community and the team.
* [Discourse](https://discourse.linuxserver.io) - post on our community forum.
* [Fleet](https://fleet.linuxserver.io) - an online web interface which displays all of our maintained images.
* [GitHub](https://github.com/linuxserver) - view the source for all of our repositories.
* [Open Collective](https://opencollective.com/linuxserver) - please consider helping us by either donating or contributing to our budget
@@ -36,18 +34,18 @@ Find us at:
[![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%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%2Fnightly%2Fci-status.yml)](https://ci-tests.linuxserver.io/linuxserver/radarr/nightly/index.html)
[![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/)
[![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%2Fdevelop%2Fci-status.yml)](https://ci-tests.linuxserver.io/linuxserver/radarr/develop/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_alpha.png)](https://github.com/Radarr/Radarr)
[![radarr](https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/radarr.png)](https://github.com/Radarr/Radarr)
## Supported Architectures
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 `lscr.io/linuxserver/radarr:nightly` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
Simply pulling `lscr.io/linuxserver/radarr:develop` 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:
@@ -55,7 +53,6 @@ The architectures supported by this image are:
| :----: | :----: | ---- |
| x86-64 | ✅ | amd64-\<version tag\> |
| arm64 | ✅ | arm64v8-\<version tag\> |
| armhf | ❌ | |
## Version Tags
@@ -65,7 +62,7 @@ This image provides various versions that are available via tags. Please read th
| :----: | :----: |--- |
| latest | ✅ | Stable Radarr releases |
| develop | ✅ | Radarr releases from their develop branch |
| nightly | ✅ | Nightly Radarr releases |
| nightly | ✅ | Radarr releases from their nightly branch |
## Application Setup
@@ -73,27 +70,38 @@ Access the webui at `<your-ip>:7878`, for more information check out [Radarr](ht
### Media folders
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.
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 don't understand, or don't want hardlinks/atomic moves.
<details>
<summary>Well planned paths</summary>
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.
</details>
## Read-Only Operation
This image can be run with a read-only container filesystem. For details please [read the docs](https://docs.linuxserver.io/misc/read-only/).
## Non-Root Operation
This image can be run with a non-root user. For details please [read the docs](https://docs.linuxserver.io/misc/non-root/).
## Usage
To help you get started creating a container from this image you can either use docker-compose or the docker cli.
>[!NOTE]
>Unless a parameter is flagged as 'optional', it is *mandatory* and a value must be provided.
### docker-compose (recommended, [click here for more info](https://docs.linuxserver.io/general/docker-compose))
```yaml
---
services:
radarr:
image: lscr.io/linuxserver/radarr:nightly
image: lscr.io/linuxserver/radarr:develop
container_name: radarr
environment:
- PUID=1000
@@ -121,7 +129,7 @@ docker run -d \
-v /path/to/movies:/movies `#optional` \
-v /path/to/download-client-downloads:/downloads `#optional` \
--restart unless-stopped \
lscr.io/linuxserver/radarr:nightly
lscr.io/linuxserver/radarr:develop
```
## Parameters
@@ -130,7 +138,7 @@ Containers are configured using parameters passed at runtime (such as those abov
| Parameter | Function |
| :----: | --- |
| `-p 7878` | The port for the Radarr web UI |
| `-p 7878:7878` | The port for the Radarr web UI |
| `-e PUID=1000` | for UserID - see below for explanation |
| `-e PGID=1000` | for GroupID - see below for explanation |
| `-e TZ=Etc/UTC` | specify a timezone to use, see this [list](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List). |
@@ -138,6 +146,7 @@ Containers are configured using parameters passed at runtime (such as those abov
| `-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) |
| `--read-only=true` | Run container with a read-only filesystem. Please [read the docs](https://docs.linuxserver.io/misc/read-only/). |
| `--user=1000:1000` | Run container with a non-root user. Please [read the docs](https://docs.linuxserver.io/misc/non-root/). |
## Environment variables from files (Docker secrets)
@@ -203,7 +212,7 @@ We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to
* Image version number:
```bash
docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/radarr:nightly
docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/radarr:develop
```
## Updating Info
@@ -251,7 +260,7 @@ Below are the instructions for updating containers:
* Update the image:
```bash
docker pull lscr.io/linuxserver/radarr:nightly
docker pull lscr.io/linuxserver/radarr:develop
```
* Stop the running container:
@@ -288,30 +297,33 @@ cd docker-radarr
docker build \
--no-cache \
--pull \
-t lscr.io/linuxserver/radarr:nightly .
-t lscr.io/linuxserver/radarr:develop .
```
The ARM variants can be built on x86_64 hardware using `multiarch/qemu-user-static`
The ARM variants can be built on x86_64 hardware and vice versa using `lscr.io/linuxserver/qemu-static`
```bash
docker run --rm --privileged multiarch/qemu-user-static:register --reset
docker run --rm --privileged lscr.io/linuxserver/qemu-static --reset
```
Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64`.
## Versions
* **04.07.26:** - Rebase to Alpine 3.24.
* **15.01.26:** - Rebase to Alpine 3.23.
* **05.07.25:** - Rebase to Alpine 3.22.
* **20.12.24:** - Rebase to Alpine 3.21.
* **25.05.24:** - Rebase to Alpine 3.20.
* **20.03.24:** - Rebase to Alpine 3.19.
* **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.
* **06.06.23:** - Rebase develop to Alpine 3.18.
* **19.12.22:** - Rebase develop branch to Alpine 3.17, migrate to s6v3.
* **20.02.22:** - Rebase develop branch to Alpine.
* **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.
* **09.27.20:** - Merge Preview into Nightly.
* **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)).
* **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.
+4 -5
View File
@@ -1,12 +1,11 @@
---
# jenkins variables
project_name: docker-radarr
external_type: na
custom_version_command: curl -sL https://radarr.servarr.com/v1/update/nightly/changes?runtime=netcore%26os=linux | jq -r '.[0].version'
custom_version_command: curl -sL https://radarr.servarr.com/v1/update/develop/changes?runtime=netcore%26os=linuxmusl | jq -r '.[0].version'
release_type: prerelease
release_tag: nightly
ls_branch: nightly
release_tag: develop
ls_branch: develop
repo_vars:
- BUILD_VERSION_ARG = 'RADARR_RELEASE'
- LS_USER = 'linuxserver'
@@ -21,7 +20,7 @@ repo_vars:
- CI_WEB='true'
- CI_PORT='7878'
- CI_SSL='false'
- CI_DELAY='120'
- CI_DELAY='240'
- CI_DOCKERENV=''
- CI_AUTH=''
- CI_WEBPATH='/system/status'
+196 -415
View File
@@ -1,415 +1,196 @@
NAME VERSION TYPE
Bouncy Castle for .NET (netstandard2.0) 1.9.0.1 dotnet
Dapper 2.0.151.35995 dotnet
Diacritical 1.0.4.0 dotnet
DryIoc 5.4.3.0 dotnet
DryIoc.Microsoft.DependencyInjection net6.0 6.2.0.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 (+19 duplicates)
FluentValidation 9.5.4.0 dotnet
ICSharpCode.SharpZipLib 1.4.2.13 dotnet
IPAddressRange 6.0.0.0 dotnet
Ical.Net 1.0.0.0 dotnet
ImpromptuInterface 7.0.1.0 dotnet
Instances 1.0.0.0 dotnet
Json.NET 13.0.3.27908 dotnet
MailKit 3.6.0.0 dotnet
Microsoft.AspNetCore 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Antiforgery 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Authentication 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Authentication.Abstractions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Authentication.Cookies 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Authentication.Core 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Authentication.OAuth 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Authorization 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Authorization.Policy 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Components 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Components.Authorization 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Components.Forms 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Components.Server 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Components.Web 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Connections.Abstractions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.CookiePolicy 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Cors 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Cryptography.Internal 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Cryptography.KeyDerivation 6.0.3224.31405 dotnet
Microsoft.AspNetCore.DataProtection 6.0.3224.31405 dotnet
Microsoft.AspNetCore.DataProtection.Abstractions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.DataProtection.Extensions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Diagnostics 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Diagnostics.Abstractions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Diagnostics.HealthChecks 6.0.3224.31405 dotnet
Microsoft.AspNetCore.HostFiltering 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Hosting 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Hosting.Abstractions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Hosting.Server.Abstractions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Html.Abstractions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Http 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Http.Abstractions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Http.Connections 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Http.Connections.Common 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Http.Extensions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Http.Features 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Http.Results 6.0.3224.31405 dotnet
Microsoft.AspNetCore.HttpLogging 6.0.3224.31405 dotnet
Microsoft.AspNetCore.HttpOverrides 6.0.3224.31405 dotnet
Microsoft.AspNetCore.HttpsPolicy 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Identity 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Localization 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Localization.Routing 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Metadata 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.Abstractions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.ApiExplorer 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.Core 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.Cors 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.DataAnnotations 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.Formatters.Json 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.Formatters.Xml 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.Localization 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.Razor 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.RazorPages 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.TagHelpers 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Mvc.ViewFeatures 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Razor 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Razor.Runtime 6.0.3224.31405 dotnet
Microsoft.AspNetCore.ResponseCaching 6.0.3224.31405 dotnet
Microsoft.AspNetCore.ResponseCaching.Abstractions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.ResponseCompression 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Rewrite 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Routing 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Routing.Abstractions 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Server.HttpSys 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Server.IIS 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Server.IISIntegration 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Server.Kestrel 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Server.Kestrel.Core 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Server.Kestrel.Transport.Quic 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets 6.0.3224.31405 dotnet
Microsoft.AspNetCore.Session 6.0.3224.31405 dotnet
Microsoft.AspNetCore.SignalR 6.0.3224.31405 dotnet
Microsoft.AspNetCore.SignalR.Common 6.0.3224.31405 dotnet
Microsoft.AspNetCore.SignalR.Core 6.0.3224.31405 dotnet
Microsoft.AspNetCore.SignalR.Protocols.Json 6.0.3224.31405 dotnet
Microsoft.AspNetCore.StaticFiles 6.0.3224.31405 dotnet
Microsoft.AspNetCore.WebSockets 6.0.3224.31405 dotnet
Microsoft.AspNetCore.WebUtilities 6.0.3224.31405 dotnet
Microsoft.Bcl.AsyncInterfaces 6.0.21.52210 dotnet
Microsoft.Bcl.TimeProvider 8.0.23.53103 dotnet
Microsoft.CSharp 6.0.3224.31407 dotnet
Microsoft.Data.SqlClient 2.1.2+2a61e8301e9d21ada2338a9279cf27653e781757 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.3224.31405 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.3224.31405 dotnet
Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions 6.0.3224.31405 dotnet
Microsoft.Extensions.Features 6.0.3224.31405 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.3224.31405 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.3224.31405 dotnet
Microsoft.Extensions.Identity.Stores 6.0.3224.31405 dotnet
Microsoft.Extensions.Localization 6.0.3224.31405 dotnet
Microsoft.Extensions.Localization.Abstractions 6.0.3224.31405 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.3224.31405 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.3224.31405 dotnet
Microsoft.Identity.Client 4.21.1.0 dotnet
Microsoft.IdentityModel.JsonWebTokens 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
Microsoft.IdentityModel.Logging 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
Microsoft.IdentityModel.Protocols 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
Microsoft.IdentityModel.Protocols.OpenIdConnect 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
Microsoft.IdentityModel.Tokens 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
Microsoft.JSInterop 6.0.3224.31405 dotnet
Microsoft.Net.Http.Headers 6.0.3224.31405 dotnet
Microsoft.OpenApi 1.6.14.0 dotnet
Microsoft.VisualBasic 6.0.3224.31407 dotnet
Microsoft.VisualBasic.Core 11.100.3224.31407 dotnet
Microsoft.Win32.Primitives 6.0.3224.31407 dotnet
Microsoft.Win32.Registry 6.0.3224.31407 dotnet
Microsoft.Win32.SystemEvents 6.0.21.52210 dotnet
MimeKit 3.6.0.0 dotnet
Mono.Nat 3.0.1 dotnet
Mono.Posix.NETStandard 1.0.0.0 dotnet
MonoTorrent 2.0.7 dotnet
NLog v5.3.3 5.3.3.2683 dotnet
NLog.Extensions.Logging v5.3.12 5.3.12.562 dotnet
NLog.Layouts.ClefJsonLayout 1.0.0.0 dotnet
NLog.Targets.Syslog 7.0.0.0 dotnet
NodaTime 3.0.0.0 dotnet
Npgsql 7.0.7.0 dotnet
Polly 8.4.1.3582 dotnet
Polly.Contrib.WaitAndRetry 1.1.1.0+7596d2dacf22d88bbd814bc49c28424fb6e921e9 dotnet
Polly.Core 8.4.1.3582 dotnet
Radarr 5.12.2.9298 dotnet (+7 duplicates)
ReusableTasks 2.0.0 dotnet
Sentry 4.0.2.0 dotnet
SixLabors.ImageSharp 3.1.5.0 dotnet
Swashbuckle.AspNetCore.Annotations 6.6.2.401 dotnet
Swashbuckle.AspNetCore.Swagger 6.6.2.401 dotnet
Swashbuckle.AspNetCore.SwaggerGen 6.6.2.401 dotnet
System 6.0.3224.31407 dotnet
System.AppContext 6.0.3224.31407 dotnet
System.Buffers 6.0.3224.31407 dotnet
System.Collections 6.0.3224.31407 dotnet
System.Collections.Concurrent 6.0.3224.31407 dotnet
System.Collections.Immutable 6.0.3224.31407 dotnet
System.Collections.NonGeneric 6.0.3224.31407 dotnet
System.Collections.Specialized 6.0.3224.31407 dotnet
System.ComponentModel 6.0.3224.31407 dotnet
System.ComponentModel.Annotations 6.0.3224.31407 dotnet
System.ComponentModel.DataAnnotations 6.0.3224.31407 dotnet
System.ComponentModel.EventBasedAsync 6.0.3224.31407 dotnet
System.ComponentModel.Primitives 6.0.3224.31407 dotnet
System.ComponentModel.TypeConverter 6.0.3224.31407 dotnet
System.Configuration 6.0.3224.31407 dotnet
System.Configuration.ConfigurationManager 6.0.922.41905 dotnet
System.Console 6.0.3224.31407 dotnet
System.Core 6.0.3224.31407 dotnet
System.Data 6.0.3224.31407 dotnet
System.Data.Common 6.0.3224.31407 dotnet
System.Data.DataSetExtensions 6.0.3224.31407 dotnet
System.Data.SQLite 1.0.115.5 dotnet
System.Data.SqlServerCe 4.0.8876.1 dotnet
System.Diagnostics.Contracts 6.0.3224.31407 dotnet
System.Diagnostics.Debug 6.0.3224.31407 dotnet
System.Diagnostics.DiagnosticSource 6.0.3224.31407 dotnet
System.Diagnostics.EventLog 6.0.21.52210 dotnet
System.Diagnostics.FileVersionInfo 6.0.3224.31407 dotnet
System.Diagnostics.Process 6.0.3224.31407 dotnet
System.Diagnostics.StackTrace 6.0.3224.31407 dotnet
System.Diagnostics.TextWriterTraceListener 6.0.3224.31407 dotnet
System.Diagnostics.Tools 6.0.3224.31407 dotnet
System.Diagnostics.TraceSource 6.0.3224.31407 dotnet
System.Diagnostics.Tracing 6.0.3224.31407 dotnet
System.Drawing 6.0.3224.31407 dotnet
System.Drawing.Common 6.0.21.52210 dotnet
System.Drawing.Primitives 6.0.3224.31407 dotnet
System.Dynamic.Runtime 6.0.3224.31407 dotnet
System.Formats.Asn1 6.0.3224.31407 dotnet
System.Globalization 6.0.3224.31407 dotnet
System.Globalization.Calendars 6.0.3224.31407 dotnet
System.Globalization.Extensions 6.0.3224.31407 dotnet
System.IO 6.0.3224.31407 dotnet
System.IO.Compression 6.0.3224.31407 dotnet
System.IO.Compression.Brotli 6.0.3224.31407 dotnet
System.IO.Compression.FileSystem 6.0.3224.31407 dotnet
System.IO.Compression.ZipFile 6.0.3224.31407 dotnet
System.IO.FileSystem 6.0.3224.31407 dotnet
System.IO.FileSystem.AccessControl 6.0.3224.31407 dotnet
System.IO.FileSystem.DriveInfo 6.0.3224.31407 dotnet
System.IO.FileSystem.Primitives 6.0.3224.31407 dotnet
System.IO.FileSystem.Watcher 6.0.3224.31407 dotnet
System.IO.IsolatedStorage 6.0.3224.31407 dotnet
System.IO.MemoryMappedFiles 6.0.3224.31407 dotnet
System.IO.Pipelines 6.0.522.21309 dotnet
System.IO.Pipes 6.0.3224.31407 dotnet
System.IO.Pipes.AccessControl 6.0.3224.31407 dotnet
System.IO.UnmanagedMemoryStream 6.0.3224.31407 dotnet
System.IdentityModel.Tokens.Jwt 6.8.0.11012235604.824068adaeb7b158df2b36d8787f689646e715e0 dotnet
System.Linq 6.0.3224.31407 dotnet
System.Linq.Expressions 6.0.3224.31407 dotnet
System.Linq.Parallel 6.0.3224.31407 dotnet
System.Linq.Queryable 6.0.3224.31407 dotnet
System.Memory 6.0.3224.31407 dotnet
System.Net 6.0.3224.31407 dotnet
System.Net.Http 6.0.3224.31407 dotnet
System.Net.Http.Json 6.0.3224.31407 dotnet
System.Net.HttpListener 6.0.3224.31407 dotnet
System.Net.Mail 6.0.3224.31407 dotnet
System.Net.NameResolution 6.0.3224.31407 dotnet
System.Net.NetworkInformation 6.0.3224.31407 dotnet
System.Net.Ping 6.0.3224.31407 dotnet
System.Net.Primitives 6.0.3224.31407 dotnet
System.Net.Quic 6.0.3224.31407 dotnet
System.Net.Requests 6.0.3224.31407 dotnet
System.Net.Security 6.0.3224.31407 dotnet
System.Net.ServicePoint 6.0.3224.31407 dotnet
System.Net.Sockets 6.0.3224.31407 dotnet
System.Net.WebClient 6.0.3224.31407 dotnet
System.Net.WebHeaderCollection 6.0.3224.31407 dotnet
System.Net.WebProxy 6.0.3224.31407 dotnet
System.Net.WebSockets 6.0.3224.31407 dotnet
System.Net.WebSockets.Client 6.0.3224.31407 dotnet
System.Numerics 6.0.3224.31407 dotnet
System.Numerics.Vectors 6.0.3224.31407 dotnet
System.ObjectModel 6.0.3224.31407 dotnet
System.Private.CoreLib 6.0.3224.31407 dotnet
System.Private.DataContractSerialization 6.0.3224.31407 dotnet
System.Private.Uri 6.0.3224.31407 dotnet
System.Private.Xml 6.0.3224.31407 dotnet
System.Private.Xml.Linq 6.0.3224.31407 dotnet
System.Reflection 6.0.3224.31407 dotnet
System.Reflection.DispatchProxy 6.0.3224.31407 dotnet
System.Reflection.Emit 6.0.3224.31407 dotnet
System.Reflection.Emit.ILGeneration 6.0.3224.31407 dotnet
System.Reflection.Emit.Lightweight 6.0.3224.31407 dotnet
System.Reflection.Extensions 6.0.3224.31407 dotnet
System.Reflection.Metadata 6.0.3224.31407 dotnet
System.Reflection.Primitives 6.0.3224.31407 dotnet
System.Reflection.TypeExtensions 6.0.3224.31407 dotnet
System.Resources.Reader 6.0.3224.31407 dotnet
System.Resources.ResourceManager 6.0.3224.31407 dotnet
System.Resources.Writer 6.0.3224.31407 dotnet
System.Runtime 6.0.3224.31407 dotnet
System.Runtime.Caching 4.700.19.56404 dotnet
System.Runtime.CompilerServices.VisualC 6.0.3224.31407 dotnet
System.Runtime.Extensions 6.0.3224.31407 dotnet
System.Runtime.Handles 6.0.3224.31407 dotnet
System.Runtime.InteropServices 6.0.3224.31407 dotnet
System.Runtime.InteropServices.RuntimeInformation 6.0.3224.31407 dotnet
System.Runtime.Intrinsics 6.0.3224.31407 dotnet
System.Runtime.Loader 6.0.3224.31407 dotnet
System.Runtime.Numerics 6.0.3224.31407 dotnet
System.Runtime.Serialization 6.0.3224.31407 dotnet
System.Runtime.Serialization.Formatters 6.0.3224.31407 dotnet
System.Runtime.Serialization.Json 6.0.3224.31407 dotnet
System.Runtime.Serialization.Primitives 6.0.3224.31407 dotnet
System.Runtime.Serialization.Xml 6.0.3224.31407 dotnet
System.Security 6.0.3224.31407 dotnet
System.Security.AccessControl 6.0.3224.31407 dotnet
System.Security.Claims 6.0.3224.31407 dotnet
System.Security.Cryptography.Algorithms 6.0.3224.31407 dotnet
System.Security.Cryptography.Cng 6.0.3224.31407 dotnet
System.Security.Cryptography.Csp 6.0.3224.31407 dotnet
System.Security.Cryptography.Encoding 6.0.3224.31407 dotnet
System.Security.Cryptography.OpenSsl 6.0.3224.31407 dotnet
System.Security.Cryptography.Pkcs 6.0.1823.26907 dotnet
System.Security.Cryptography.Primitives 6.0.3224.31407 dotnet
System.Security.Cryptography.ProtectedData 6.0.21.52210 dotnet
System.Security.Cryptography.X509Certificates 6.0.3224.31407 dotnet
System.Security.Cryptography.Xml 6.0.822.36306 dotnet
System.Security.Permissions 6.0.21.52210 dotnet
System.Security.Principal 6.0.3224.31407 dotnet
System.Security.Principal.Windows 6.0.3224.31407 dotnet
System.Security.SecureString 6.0.3224.31407 dotnet
System.ServiceModel.Web 6.0.3224.31407 dotnet
System.ServiceProcess 6.0.3224.31407 dotnet
System.ServiceProcess.ServiceController 6.0.1823.26907 dotnet
System.Text.Encoding 6.0.3224.31407 dotnet
System.Text.Encoding.CodePages 6.0.3224.31407 dotnet
System.Text.Encoding.Extensions 6.0.3224.31407 dotnet
System.Text.Encodings.Web 6.0.3224.31407 dotnet
System.Text.Json 6.0.3224.31407 dotnet
System.Text.RegularExpressions 6.0.3224.31407 dotnet
System.Threading 6.0.3224.31407 dotnet
System.Threading.Channels 6.0.3224.31407 dotnet
System.Threading.Overlapped 6.0.3224.31407 dotnet
System.Threading.Tasks 6.0.3224.31407 dotnet
System.Threading.Tasks.Dataflow 6.0.3224.31407 dotnet
System.Threading.Tasks.Extensions 6.0.3224.31407 dotnet
System.Threading.Tasks.Parallel 6.0.3224.31407 dotnet
System.Threading.Thread 6.0.3224.31407 dotnet
System.Threading.ThreadPool 6.0.3224.31407 dotnet
System.Threading.Timer 6.0.3224.31407 dotnet
System.Transactions 6.0.3224.31407 dotnet
System.Transactions.Local 6.0.3224.31407 dotnet
System.ValueTuple 6.0.3224.31407 dotnet
System.Web 6.0.3224.31407 dotnet
System.Web.HttpUtility 6.0.3224.31407 dotnet
System.Windows 6.0.3224.31407 dotnet
System.Windows.Extensions 6.0.21.52210 dotnet
System.Xml 6.0.3224.31407 dotnet
System.Xml.Linq 6.0.3224.31407 dotnet
System.Xml.ReaderWriter 6.0.3224.31407 dotnet
System.Xml.Serialization 6.0.3224.31407 dotnet
System.Xml.XDocument 6.0.3224.31407 dotnet
System.Xml.XPath 6.0.3224.31407 dotnet
System.Xml.XPath.XDocument 6.0.3224.31407 dotnet
System.Xml.XmlDocument 6.0.3224.31407 dotnet
System.Xml.XmlSerializer 6.0.3224.31407 dotnet
WindowsBase 6.0.3224.31407 dotnet
alpine-baselayout 3.6.5-r0 apk
alpine-baselayout-data 3.6.5-r0 apk
alpine-keys 2.4-r1 apk
alpine-release 3.20.3-r0 apk
apk-tools 2.14.4-r0 apk
bash 5.2.26-r0 apk
brotli-libs 1.1.0-r2 apk
busybox 1.36.1-r29 apk
busybox-binsh 1.36.1-r29 apk
c-ares 1.33.1-r0 apk
ca-certificates 20240705-r0 apk
ca-certificates-bundle 20240705-r0 apk
catatonit 0.2.0-r0 apk
coreutils 9.5-r1 apk
coreutils-env 9.5-r1 apk
coreutils-fmt 9.5-r1 apk
coreutils-sha512sum 9.5-r1 apk
curl 8.9.1-r2 apk
findutils 4.9.0-r5 apk
icu-data-en 74.2-r0 apk
icu-libs 74.2-r0 apk
jq 1.7.1-r0 apk
libacl 2.3.2-r0 apk
libattr 2.5.2-r0 apk
libbsd 0.12.2-r0 apk
libcrypto3 3.3.2-r0 apk
libcurl 8.9.1-r2 apk
libgcc 13.2.1_git20240309-r0 apk
libgcrypt 1.10.3-r0 apk
libgpg-error 1.49-r0 apk
libidn2 2.3.7-r0 apk
libintl 0.22.5-r0 apk
libmd 1.1.0-r0 apk
libncursesw 6.4_p20240420-r1 apk
libproc2 4.0.4-r0 apk
libpsl 0.21.5-r1 apk
libssl3 3.3.2-r0 apk
libstdc++ 13.2.1_git20240309-r0 apk
libunistring 1.2-r0 apk
libxml2 2.12.7-r0 apk
libxslt 1.1.39-r1 apk
linux-pam 1.6.0-r0 apk
mscorlib 6.0.3224.31407 dotnet
musl 1.2.5-r0 apk
musl-utils 1.2.5-r0 apk
ncurses-terminfo-base 6.4_p20240420-r1 apk
netcat-openbsd 1.226-r0 apk
netstandard 6.0.3224.31407 dotnet
nghttp2-libs 1.62.1-r0 apk
oniguruma 6.9.9-r0 apk
procps-ng 4.0.4-r0 apk
readline 8.2.10-r0 apk
scanelf 1.3.7-r2 apk
shadow 4.15.1-r0 apk
skalibs 2.14.1.1-r0 apk
sqlite-libs 3.45.3-r1 apk
ssl_client 1.36.1-r29 apk
tzdata 2024b-r0 apk
utmps-libs 0.1.2.2-r1 apk
xmlstarlet 1.6.1-r2 apk
xz-libs 5.6.2-r0 apk
zlib 1.3.1-r1 apk
zstd-libs 1.5.6-r0 apk
NAME VERSION TYPE
Azure.Core 1.50.0 dotnet (+5 duplicates)
Azure.Identity 1.17.1 dotnet (+5 duplicates)
BouncyCastle.Cryptography 2.6.2 dotnet (+5 duplicates)
Dapper 2.1.79 dotnet (+5 duplicates)
Diacritical.Net 1.0.4 dotnet (+5 duplicates)
DryIoc.Microsoft.DependencyInjection 6.2.0 dotnet (+1 duplicate)
DryIoc.dll 5.4.3 dotnet (+7 duplicates)
Dynamitey 3.0.3 dotnet (+3 duplicates)
Equ 2.3.0 dotnet (+5 duplicates)
FluentMigrator 6.2.0 dotnet (+5 duplicates)
FluentMigrator.Abstractions 6.2.0 dotnet (+5 duplicates)
FluentMigrator.Extensions.Postgres 6.2.0 dotnet (+5 duplicates)
FluentMigrator.Runner.Core 6.2.0 dotnet (+5 duplicates)
FluentMigrator.Runner.Postgres 6.2.0 dotnet (+5 duplicates)
FluentMigrator.Runner.SQLite 6.2.0 dotnet (+5 duplicates)
FluentValidation 9.5.4 dotnet (+5 duplicates)
IPAddressRange 6.3.0 dotnet (+7 duplicates)
Ical.Net 4.3.1 dotnet (+2 duplicates)
ImpromptuInterface 8.0.6 dotnet (+3 duplicates)
Instances 1.6.1 dotnet (+5 duplicates)
MailKit 4.16.0 dotnet (+5 duplicates)
Microsoft.AspNetCore.Cryptography.Internal 8.0.27 dotnet (+4 duplicates)
Microsoft.AspNetCore.Cryptography.KeyDerivation 8.0.27 dotnet (+4 duplicates)
Microsoft.Bcl.AsyncInterfaces 8.0.0 dotnet (+5 duplicates)
Microsoft.Data.SqlClient 6.1.5 dotnet (+5 duplicates)
Microsoft.Extensions.Caching.Abstractions 8.0.0 dotnet (+4 duplicates)
Microsoft.Extensions.Caching.Memory 8.0.1 dotnet (+4 duplicates)
Microsoft.Extensions.Configuration 8.0.0 dotnet (+6 duplicates)
Microsoft.Extensions.Configuration.Abstractions 8.0.0 dotnet (+6 duplicates)
Microsoft.Extensions.Configuration.Binder 8.0.2 dotnet (+6 duplicates)
Microsoft.Extensions.Configuration.CommandLine 8.0.0 dotnet (+6 duplicates)
Microsoft.Extensions.Configuration.EnvironmentVariables 8.0.0 dotnet (+6 duplicates)
Microsoft.Extensions.Configuration.FileExtensions 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.Configuration.Json 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.Configuration.UserSecrets 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.DependencyInjection 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.DependencyInjection.Abstractions 8.0.2 dotnet (+6 duplicates)
Microsoft.Extensions.Diagnostics 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.Diagnostics.Abstractions 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.FileProviders.Abstractions 8.0.0 dotnet (+6 duplicates)
Microsoft.Extensions.FileProviders.Physical 8.0.0 dotnet (+6 duplicates)
Microsoft.Extensions.FileSystemGlobbing 8.0.0 dotnet (+6 duplicates)
Microsoft.Extensions.Hosting 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.Hosting.Abstractions 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.Hosting.WindowsServices 8.0.1 dotnet (+7 duplicates)
Microsoft.Extensions.Logging 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.Logging.Abstractions 8.0.2 dotnet (+1 duplicate)
Microsoft.Extensions.Logging.Abstractions 8.0.3 dotnet (+4 duplicates)
Microsoft.Extensions.Logging.Configuration 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.Logging.Console 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.Logging.Debug 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.Logging.EventLog 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.Logging.EventSource 8.0.1 dotnet (+6 duplicates)
Microsoft.Extensions.Options 8.0.2 dotnet (+6 duplicates)
Microsoft.Extensions.Options.ConfigurationExtensions 8.0.0 dotnet (+6 duplicates)
Microsoft.Extensions.Primitives 8.0.0 dotnet (+6 duplicates)
Microsoft.Identity.Client 4.80.0 dotnet (+5 duplicates)
Microsoft.Identity.Client.Extensions.Msal 4.78.0 dotnet (+5 duplicates)
Microsoft.IdentityModel.Abstractions 8.14.0 dotnet (+5 duplicates)
Microsoft.IdentityModel.JsonWebTokens 7.7.1 dotnet (+5 duplicates)
Microsoft.IdentityModel.Logging 7.7.1 dotnet (+5 duplicates)
Microsoft.IdentityModel.Protocols 7.7.1 dotnet (+5 duplicates)
Microsoft.IdentityModel.Protocols.OpenIdConnect 7.7.1 dotnet (+5 duplicates)
Microsoft.IdentityModel.Tokens 7.7.1 dotnet (+5 duplicates)
Microsoft.OpenApi 1.6.23 dotnet (+2 duplicates)
Microsoft.SqlServer.Server 1.0.0 dotnet (+5 duplicates)
Microsoft.Win32.SystemEvents 8.0.0 dotnet (+5 duplicates)
MimeKit 4.16.0 dotnet (+5 duplicates)
Mono.Nat 3.0.0 dotnet (+5 duplicates)
Mono.Posix.NETStandard 5.20.1.34-servarr20 dotnet
MonoTorrent 3.0.2 dotnet (+5 duplicates)
NLog 5.5.1 dotnet (+7 duplicates)
NLog.Extensions.Logging 5.5.0 dotnet (+7 duplicates)
NLog.Layouts.ClefJsonLayout 1.0.5 dotnet (+7 duplicates)
NLog.Targets.Syslog 7.0.0 dotnet (+7 duplicates)
Newtonsoft.Json 13.0.4 dotnet (+7 duplicates)
NodaTime 3.2.0 dotnet (+2 duplicates)
Npgsql 9.0.5 dotnet (+7 duplicates)
Polly 8.6.6 dotnet (+5 duplicates)
Polly.Contrib.WaitAndRetry 1.1.1 dotnet (+7 duplicates)
Polly.Core 8.6.6 dotnet (+5 duplicates)
Radarr 1.0.0 dotnet
Radarr.Api.V3 1.0.0 dotnet (+2 duplicates)
Radarr.Common 1.0.0 dotnet (+7 duplicates)
Radarr.Core 1.0.0 dotnet (+5 duplicates)
Radarr.Host 1.0.0 dotnet (+1 duplicate)
Radarr.Http 1.0.0 dotnet (+3 duplicates)
Radarr.Mono 1.0.0 dotnet
Radarr.SignalR 1.0.0 dotnet (+4 duplicates)
ReusableTasks 4.0.0 dotnet (+5 duplicates)
Sentry 4.0.2 dotnet (+7 duplicates)
Servarr.FFMpegCore 4.7.0-26 dotnet (+5 duplicates)
Servarr.FFprobe 5.1.10.124 dotnet (+5 duplicates)
SharpZipLib 1.4.2 dotnet (+7 duplicates)
SixLabors.ImageSharp 3.1.12 dotnet (+5 duplicates)
SourceGear.sqlite3 3.50.4.5 dotnet (+7 duplicates)
Swashbuckle.AspNetCore.Annotations 8.1.4 dotnet (+2 duplicates)
Swashbuckle.AspNetCore.Swagger 8.1.4 dotnet (+2 duplicates)
Swashbuckle.AspNetCore.SwaggerGen 8.1.4 dotnet (+2 duplicates)
System.ClientModel 1.8.0 dotnet (+5 duplicates)
System.ComponentModel 4.3.0 dotnet (+2 duplicates)
System.ComponentModel.Annotations 5.0.0 dotnet (+4 duplicates)
System.Configuration.ConfigurationManager 8.0.1 dotnet (+7 duplicates)
System.Data.SQLite 2.0.3 dotnet (+7 duplicates)
System.Diagnostics.DiagnosticSource 8.0.1 dotnet (+4 duplicates)
System.Diagnostics.EventLog 8.0.1 dotnet (+6 duplicates)
System.Drawing.Common 8.0.27 dotnet (+5 duplicates)
System.Formats.Asn1 8.0.1 dotnet (+4 duplicates)
System.IO 4.3.0 dotnet (+5 duplicates)
System.IO.FileSystem.AccessControl 5.0.0 dotnet (+5 duplicates)
System.IdentityModel.Tokens.Jwt 7.7.1 dotnet (+5 duplicates)
System.Memory.Data 8.0.1 dotnet (+5 duplicates)
System.Private.Uri 4.3.0 dotnet (+5 duplicates)
System.Reflection 4.3.0 dotnet (+5 duplicates)
System.Reflection.Primitives 4.3.0 dotnet (+5 duplicates)
System.Runtime 4.3.0 dotnet (+5 duplicates)
System.Runtime.Loader 4.3.0 dotnet (+5 duplicates)
System.Security.AccessControl 5.0.0 dotnet (+5 duplicates)
System.Security.Cryptography.Pkcs 8.0.1 dotnet (+4 duplicates)
System.Security.Cryptography.ProtectedData 8.0.0 dotnet (+7 duplicates)
System.Security.Principal.Windows 5.0.0 dotnet (+5 duplicates)
System.ServiceProcess.ServiceController 8.0.1 dotnet (+7 duplicates)
System.Text.Encoding 4.3.0 dotnet (+5 duplicates)
System.Text.Encoding.CodePages 8.0.0 dotnet (+4 duplicates)
System.Text.Json 8.0.6 dotnet (+5 duplicates)
System.Threading.Tasks 4.3.0 dotnet (+5 duplicates)
acl-libs 2.3.2-r1 apk
alpine-baselayout 3.7.2-r1 apk
alpine-baselayout-data 3.7.2-r1 apk
alpine-keys 2.6-r0 apk
alpine-release 3.24.1-r0 apk
apk-tools 3.0.6-r0 apk
bash 5.3.9-r1 apk
brotli-libs 1.2.0-r1 apk
busybox 1.37.0-r31 apk
busybox-binsh 1.37.0-r31 apk
c-ares 1.34.8-r0 apk
ca-certificates 20260611-r0 apk
ca-certificates-bundle 20260611-r0 apk
catatonit 0.2.1-r0 apk
coreutils 9.11-r0 apk
coreutils-env 9.11-r0 apk
coreutils-fmt 9.11-r0 apk
coreutils-sha512sum 9.11-r0 apk
curl 8.21.0-r0 apk
findutils 4.10.0-r1 apk
icu-data-en 78.1-r0 apk
icu-libs 78.1-r0 apk
jq 1.8.1-r0 apk
libapk 3.0.6-r0 apk
libattr 2.5.2-r2 apk
libbsd 0.12.2-r0 apk
libcrypto3 3.5.7-r0 apk
libcurl 8.21.0-r0 apk
libgcc 15.2.0-r5 apk
libidn2 2.3.8-r0 apk
libintl 1.0-r0 apk
libmd 1.2.0-r0 apk
libncursesw 6.6_p20260516-r0 apk
libproc2 4.0.6-r0 apk
libpsl 0.21.5-r3 apk
libssl3 3.5.7-r0 apk
libstdc++ 15.2.0-r5 apk
libunistring 1.4.2-r0 apk
libxml2 2.13.9-r2 apk
libxslt 1.1.43-r3 apk
linux-pam 1.7.1-r2 apk
musl 1.2.6-r2 apk
musl-utils 1.2.6-r2 apk
ncurses-terminfo-base 6.6_p20260516-r0 apk
netcat-openbsd 1.234.1-r0 apk
nghttp2-libs 1.69.0-r0 apk
oniguruma 6.9.10-r0 apk
procps-ng 4.0.6-r0 apk
readline 8.3.3-r1 apk
runtime.any.System.IO 4.3.0 dotnet (+5 duplicates)
runtime.any.System.Reflection 4.3.0 dotnet (+5 duplicates)
runtime.any.System.Reflection.Primitives 4.3.0 dotnet (+5 duplicates)
runtime.any.System.Runtime 4.3.0 dotnet (+5 duplicates)
runtime.any.System.Text.Encoding 4.3.0 dotnet (+5 duplicates)
runtime.any.System.Threading.Tasks 4.3.0 dotnet (+5 duplicates)
runtime.unix.System.Private.Uri 4.3.0 dotnet (+5 duplicates)
runtimepack.Microsoft.AspNetCore.App.Runtime.linux-musl-x64 8.0.27 dotnet (+4 duplicates)
runtimepack.Microsoft.NETCore.App.Runtime.linux-musl-x64 8.0.27 dotnet (+7 duplicates)
scanelf 1.3.9-r1 apk
shadow 4.18.0-r1 apk
skalibs-libs 2.15.0.0-r0 apk
sqlite-libs 3.53.2-r0 apk
ssl_client 1.37.0-r31 apk
tzdata 2026b-r0 apk
utmps-libs 0.1.3.3-r0 apk
xmlstarlet 1.6.1-r2 apk
xz-libs 5.8.3-r0 apk
zlib 1.3.2-r0 apk
zstd-libs 1.5.7-r2 apk
+79 -49
View File
@@ -3,75 +3,105 @@
# 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_alpha.png"
project_logo: "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/radarr.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 }}"
# supported architectures
available_architectures:
- { arch: "{{ arch_x86_64 }}", tag: "amd64-latest"}
- { arch: "{{ arch_arm64 }}", tag: "arm64v8-latest"}
- {arch: "{{ arch_x86_64 }}", tag: "amd64-latest"}
- {arch: "{{ arch_arm64 }}", tag: "arm64v8-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: "Nightly Radarr releases" }
- {tag: "latest", desc: "Stable Radarr releases"}
- {tag: "develop", desc: "Radarr releases from their develop branch"}
- {tag: "nightly", desc: "Radarr releases from their nightly branch"}
# container parameters
param_container_name: "{{ project_name }}"
param_usage_include_vols: true
param_volumes:
- { vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/data", desc: "Database and Radarr configs" }
- {vol_path: "/config", vol_host_path: "/path/to/{{ project_name }}/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/download-client-downloads", desc: "Location of download managers output directory (See note in Application setup)" }
- {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/download-client-downloads", desc: "Location of download managers output directory (See note in Application setup)"}
param_usage_include_ports: true
param_ports:
- { external_port: "7878", internal_port: "7878", port_desc: "The port for the Radarr web UI" }
- {external_port: "7878", internal_port: "7878", port_desc: "The port for the Radarr web UI"}
readonly_supported: true
nonroot_supported: true
# application setup block
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).
### Media folders
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 don't understand, or don't 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.
readme_media: true
# init diagram
init_diagram: |
"radarr:develop": {
docker-mods
base {
fix-attr +\nlegacy cont-init
}
docker-mods -> base
legacy-services
custom services
init-services -> legacy-services
init-services -> custom services
custom services -> legacy-services
legacy-services -> ci-service-check
init-migrations -> init-adduser
init-os-end -> init-config
init-config -> init-config-end
init-crontab-config -> init-config-end
init-radarr-config -> init-config-end
init-config -> init-crontab-config
init-mods-end -> init-custom-files
init-adduser -> init-device-perms
base -> init-envfile
base -> init-migrations
init-config-end -> init-mods
init-mods-package-install -> init-mods-end
init-mods -> init-mods-package-install
init-adduser -> init-os-end
init-device-perms -> init-os-end
init-envfile -> init-os-end
init-config -> init-radarr-config
init-custom-files -> init-services
init-services -> svc-cron
svc-cron -> legacy-services
init-services -> svc-radarr
svc-radarr -> legacy-services
}
Base Images: {
"baseimage-alpine:3.24"
}
"radarr:develop" <- Base Images
# changelog
changelogs:
- { date: "25.05.24:", desc: "Rebase to Alpine 3.20." }
- { date: "20.03.24:", desc: "Rebase to Alpine 3.19." }
- { 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: "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." }
- { date: "10.05.19:", desc: "Rebase to Bionic." }
- { date: "23.03.19:", desc: "Switching to new Base images, shift to arm32v7 tag." }
- { date: "09.09.18:", desc: "Add pipeline build process." }
- { date: "24.02.18:", desc: "Add nightly branch." }
- { date: "06.02.18:", desc: "Radarr repo changed owner." }
- { date: "15.12.17:", desc: "Fix continuation lines." }
- { date: "17.04.17:", desc: "Switch to using inhouse mono baseimage, adds python also." }
- { date: "13.04.17:", desc: "Switch to official mono repository." }
- { date: "10.01.17:", desc: "Initial Release." }
- {date: "04.07.26:", desc: "Rebase to Alpine 3.24."}
- {date: "15.01.26:", desc: "Rebase to Alpine 3.23."}
- {date: "05.07.25:", desc: "Rebase to Alpine 3.22."}
- {date: "20.12.24:", desc: "Rebase to Alpine 3.21."}
- {date: "25.05.24:", desc: "Rebase to Alpine 3.20."}
- {date: "20.03.24:", desc: "Rebase to Alpine 3.19."}
- {date: "06.06.23:", desc: "Rebase develop to Alpine 3.18."}
- {date: "19.12.22:", desc: "Rebase develop branch to Alpine 3.17, migrate to s6v3."}
- {date: "20.02.22:", desc: "Rebase develop branch to Alpine."}
- {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: "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."}
- {date: "10.05.19:", desc: "Rebase to Bionic."}
- {date: "23.03.19:", desc: "Switching to new Base images, shift to arm32v7 tag."}
- {date: "09.09.18:", desc: "Add pipeline build process."}
- {date: "24.02.18:", desc: "Add nightly branch."}
- {date: "06.02.18:", desc: "Radarr repo changed owner."}
- {date: "15.12.17:", desc: "Fix continuation lines."}
- {date: "17.04.17:", desc: "Switch to using inhouse mono baseimage, adds python also."}
- {date: "13.04.17:", desc: "Switch to official mono repository."}
- {date: "10.01.17:", desc: "Initial Release."}
Executable → Regular
View File
@@ -3,7 +3,8 @@
mkdir -p /run/radarr-temp
# permissions
lsiown -R abc:abc \
/config \
/run/radarr-temp
if [[ -z ${LSIO_NON_ROOT_USER} ]]; then
lsiown -R abc:abc \
/config \
/run/radarr-temp
fi
@@ -1,6 +1,6 @@
#!/bin/bash
if [ -f /config/config.xml ]; then
if [[ -f /config/config.xml ]]; then
PORT=$(xmlstarlet sel -T -t -v /Config/Port /config/config.xml)
fi
+11 -4
View File
@@ -1,7 +1,14 @@
#!/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
if [[ -z ${LSIO_NON_ROOT_USER} ]]; then
exec \
s6-notifyoncheck -d -n 300 -w 1000 \
cd /app/radarr/bin s6-setuidgid abc /app/radarr/bin/Radarr \
-nobrowser -data=/config
else
exec \
s6-notifyoncheck -d -n 300 -w 1000 \
cd /app/radarr/bin /app/radarr/bin/Radarr \
-nobrowser -data=/config
fi