diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 07b52ab..22b506c 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -58,6 +58,9 @@ jobs: url: ${{ steps.deployment.outputs.page_url }} link-checker: + permissions: + contents: read + pull-requests: write runs-on: ubuntu-latest needs: build steps: @@ -72,6 +75,23 @@ jobs: with: # nice to check a few specific root-level markdown files (README.md etc) for valid links, # but the main thing to check is the rendered website (in the `open-source` directory) - args: "--github-token ${{ secrets.GITHUB_TOKEN }} -- README.md CONTRIBUTING.md open-source/" + args: "--github-token ${{ secrets.GITHUB_TOKEN }} --root-dir . -- README.md CONTRIBUTING.md open-source/" fail: true jobSummary: true + output: lychee-output.md + - name: Change the output title to "Link checker summary" + if: failure() + run: sed -i '1s/.*/# Link checker summary/' lychee-output.md + - name: Add Link Checker summary comment + uses: marocchino/sticky-pull-request-comment@5770ad5eb8f42dd2c4f34da00c94c5381e49af88 # v3.0.5 + if: (github.event_name == 'pull_request') && failure() + with: + header: link-checker-summary + recreate: true + path: lychee-output.md + - name: A nice comment when/if the link checker passes + uses: marocchino/sticky-pull-request-comment@5770ad5eb8f42dd2c4f34da00c94c5381e49af88 # v3.0.5 + if: (github.event_name == 'pull_request') && success() + with: + header: link-checker-summary + message: "The link checker has passed successfully :tada:! No broken links were found." diff --git a/_data/events.yml b/_data/events.yml index c004873..2573412 100644 --- a/_data/events.yml +++ b/_data/events.yml @@ -79,7 +79,7 @@ location: 90 High Holborn, Function Space - title: First contribution to open-source software workshop organiser: ARC - url: https://www.ucl.ac.uk/advanced-research-computing/events/2025/jul/festival-digital-research-innovation-scholarship + url: https://www.ucl.ac.uk/research-innovation/advanced-research-computing/digital-research-community-events-and-support/events/festival-digital-research-innovation-scholarship-2025 date: 2025-07-15 time: "13:30" duration: diff --git a/_data/ospo/events.yml b/_data/ospo/events.yml index cd76a6e..31f7787 100644 --- a/_data/ospo/events.yml +++ b/_data/ospo/events.yml @@ -9,9 +9,9 @@ 202507OSSfirst: date: 2025-07-15 title: "First contribution to open-source software workshop" - url: https://www.ucl.ac.uk/advanced-research-computing/events/2025/jul/festival-digital-research-innovation-scholarship + url: https://www.ucl.ac.uk/research-innovation/advanced-research-computing/digital-research-community-events-and-support/events/festival-digital-research-innovation-scholarship-2025 event: ARC Festival of Digital Research, Innovation & Scholarship - event_url: https://www.ucl.ac.uk/advanced-research-computing/events/2025/jul/festival-digital-research-innovation-scholarship + event_url: https://www.ucl.ac.uk/research-innovation/advanced-research-computing/digital-research-community-events-and-support/events/festival-digital-research-innovation-scholarship-2025 results: ✅ # FIXME: add [data] 202411TTW: diff --git a/_data/ospo/proposals.yml b/_data/ospo/proposals.yml index 1bcae55..c957fcc 100644 --- a/_data/ospo/proposals.yml +++ b/_data/ospo/proposals.yml @@ -27,5 +27,5 @@ title: Open Research Leadership Development - Preparing researchers to nurture healthy communities. link: funding: UCL Research Culture Seed Funds - link_call: https://www.ucl.ac.uk/research/strategy-environment/research-culture-ucl/get-involved/research-culture-seed-fund + link_call: result: ❌ diff --git a/_data/ospo/submissions.yml b/_data/ospo/submissions.yml index 18d3048..5b748a6 100644 --- a/_data/ospo/submissions.yml +++ b/_data/ospo/submissions.yml @@ -47,7 +47,7 @@ title: "What is an OSPO and why do we need one in UCL?" link: event: "ARC's Festival of Digital Research, Innovation & Scholarship" - event_link: https://www.ucl.ac.uk/advanced-research-computing/events/2024/jun/festival-digital-research-scholarship + event_link: https://www.ucl.ac.uk/research-innovation/advanced-research-computing/digital-research-community-events-and-support/events/festival-digital-research-scholarship-2024 result: >- ✅ 202406UCLOSci: diff --git a/lychee.toml b/lychee.toml index 7d25ba5..0c616de 100644 --- a/lychee.toml +++ b/lychee.toml @@ -1,10 +1,30 @@ -accept = [200, 403, 415, 429] +accept = [200, 202, 403, 415, 429, 999] verbose = "info" no_progress = true exclude = [ + 'https://www.softwareheritage.org', # Their SSL certificate is not trusted but the link works (currently!) '(?x).*profiles.ucl.ac.uk.*/thumbnail', # People may not have a profile image. '(?x).*github-readme-stats.vercel.app.*', # Returns 503 for some reason '(?x).rdr.ucl.ac.uk/articles/*', # Article does exist but sometimes returns strange codes: 202, 403... '(?x).*127.0.0.1.*', # This is a local address '(?x).*liveuclac.sharepoint.com/sites/*', # SharePoint pages will need UCL credentials. + # Several annoying false positives: + # + # Some parts of the upstream theme cause errors because they don't prepend https. We don't fix the theme because + # it will be updated to the new branding soon. So just suppress all of this for now. Remove when the theme is + # updated. All social media links on every theme-rendered page are like this!! + '(?x).*cdn.ucl.ac.uk/*', + '(?x)file://(?:.*/)?www\.ucl\.ac\.uk(?:/|$)', + '(?x).*shop.ucl.ac.uk', + '(?x).*www.flickr.com/photos/uclnews', + '(?x).*www.facebook.com/uclofficial', + '(?x).*twitter.com/ucl', + '(?x).*www.instagram.com/ucl', + '(?x).*www.youtube.com/ucltv', + '(?x).*soundcloud.com/uclsound', + # Aaand the favicon and several image paths are broken in the upstream theme, so just ignore these too. + '(?x).*favicon-152.png', + '(?x).*assets/images/hero-image-taught-desktop.jpg', # doesn't exist: theme bug + '(?x).*indigo/images/search-sprite.png', # doesn't exist: theme bug + '(?x).*assets/css/owl.video.play.png', ] diff --git a/ospo/business-case.md b/ospo/business-case.md index f28f287..118c618 100644 --- a/ospo/business-case.md +++ b/ospo/business-case.md @@ -112,7 +112,7 @@ This puts UCL in an exceptional position to provide the support that open source An Open Source Programme Office (OSPO) is a body within an organisation to look after its open source strategy and operations. OSPOs have been widely adopted in the commercial world[^OSPO-commerce], governmental institutions and world organisations[^OSPO-public]. More recently, various academic and research institutions have also found the value of having OSPOs. -Focusing on the latest, we can find research centres such as [CERN][ospo-cern] or [Space Telescope Science Institute][ospo-stsci] and universities like [Johns Hopkins][ospo-jhu] (the first one, since 2019), [University of California][ospo-uc] and [Carnegie Mellon University][ospo-cmu] in the USA, or European examples like [Trinity College Dublin][ospo-tcd] in Ireland, [University of Luxembourg][ospo-snt], and [ETH Zurich][ospo-eth] in Switzerland. +Focusing on the latest, we can find research centres such as [CERN][ospo-cern] or [Space Telescope Science Institute][ospo-stsci] and universities like [Johns Hopkins][ospo-jhu] (the first one, since 2019), [University of California][ospo-uc] and [Carnegie Mellon University][ospo-cmu] in the USA, or European examples like Trinity College Dublin in Ireland, [University of Luxembourg][ospo-snt], and [ETH Zurich][ospo-eth] in Switzerland. [^OSPO-commerce]: The two biggest OSPO networks in industry are: [OSPO Alliance][ospo-alliance] supported by the [Eclipse Foundation][eclipse] and [TODO Group][ospo-todogrp] supported by the [Linux Foundation][LF]. A [report published in 2024 by the TODO Group][state-of-ospo-2024] found that 77% of large organisations have an OSPO (DOI: 10.70828/FXMR3018). @@ -163,7 +163,6 @@ A more detailed definition of an academic OSPO can be found in [Young, et al. (2 [ospo-snt]: https://www.uni.lu/snt-en/ [ospo-stsci]: http://www.stsci.edu/ -[ospo-tcd]: https://www.tcd.ie/innovation/for-trinity-innovators/open-source-programme-office/ [ospo-todogrp]: https://todogroup.org/ [ospo-uc]: https://ucospo.net/ [ospo-un]: https://undp.org/digital @@ -334,7 +333,8 @@ This should cover licensing possibilities as well as business models. -[reports]: ./documents.html#yearly-reports +[reports]: https://google.com + [lug]: https://github-pages.ucl.ac.uk/linux/ [Latug]: https://teams.microsoft.com/l/team/19%3A4669171c71b74d9ea23c30f7e3b9195a%40thread.skype/conversations?groupId=2435df9e-6f6e-4f1e-8f4c-e048dcabb2b8&tenantId=1faf88fe-a998-4c5b-93c9-210a11d9a5c2 [PCoC]: https://teams.microsoft.com/l/team/19%3A85c78bc816764ae5982ae7b4997b2f47%40thread.skype/conversations?groupId=a3786c11-7532-44a2-a8eb-547382638405&tenantId=1faf88fe-a998-4c5b-93c9-210a11d9a5c2 diff --git a/ospo/documents/00-preOSPO/20240627-OSSBreakfastClub.md b/ospo/documents/00-preOSPO/20240627-OSSBreakfastClub.md index 83a28f0..2415b74 100644 --- a/ospo/documents/00-preOSPO/20240627-OSSBreakfastClub.md +++ b/ospo/documents/00-preOSPO/20240627-OSSBreakfastClub.md @@ -45,7 +45,7 @@ The university could also collaborate with schools to promote open source within In UCL there are well established collaborations with London society. For example, [The Barlett](https://www.ucl.ac.uk/bartlett/) (e.g., [resilience in London during COVID](https://www.ucl.ac.uk/bartlett/case-studies/2023/jun/mapping-stories-community-struggles-and-resilience-london-face-covid-19), or [missions-driven government for public services](https://medium.com/iipp-blog/professor-mariana-mazzucato-and-cllr-georgia-gould-leader-of-camden-council-write-about-the-need-ebd5ec2841d2) in Camden with the [IIPP](https://www.ucl.ac.uk/bartlett/public-purpose)). Working with them to include the OSS component will also have an impact. -[OpenUK State of the Open 2023](https://openuk.uk/stateofopen/state-of-open-the-uk-in-2023/stateofopen-2023/) mentions the [UK Government had an open source procurement toolkit since 2011](https://www.theguardian.com/government-computing-network/2011/nov/02/cabinet-office-open-source-procurement-toolkit) (though [withdrawn in 2014](https://www.gov.uk/government/publications/open-source-procurement-toolkit)). These guides could help to promote the procurement of OS software within the university. +[OpenUK State of the Open 2023](https://openuk.uk/stateofopen/state-of-open-the-uk-in-2023/) mentions the [UK Government had an open source procurement toolkit since 2011](https://www.theguardian.com/government-computing-network/2011/nov/02/cabinet-office-open-source-procurement-toolkit) (though [withdrawn in 2014](https://www.gov.uk/government/publications/open-source-procurement-toolkit)). These guides could help to promote the procurement of OS software within the university. Also, OpenUK is pushing to enable AI openness through their [open manifesto](https://openuk.uk/openmanifesto/), which an OSPO in UCL could also show its support. There are funding opportunities for many of this activities. Some are: [SLOAN](https://sloan.org/), [OSCARS](https://oscars-project.eu/), and collaborations with private sector.