You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[InvenioRDM](https://inveniosoftware.org/products/rdm/) is the basis for many institutional repositories such as [CaltechDATA](https://data.caltech.edu)that enable users to preserve software and data sets in long-term archive. Though such repositories are critical resources, creating detailed records and uploading assets can be a tedious and error-prone process if done manually. This is where the [_InvenioRDM GitHub Archiver_](https://github.com/caltechlibrary/iga) (IGA) comes in.
3
+
[InvenioRDM](https://inveniosoftware.org/products/rdm/) is used by many institutional repositories such as [CaltechDATA](https://data.caltech.edu)to let users preserve software and data in a long-term archive managed by their institution. Depositing software and/or data into these repositories requires the creation of detailed metadata records – a tedious and error-prone process if done manually. This is where the [_InvenioRDM GitHub Archiver_](https://github.com/caltechlibrary/iga) (IGA) comes in.
4
4
5
-
IGA creates metadata records and sends releases from GitHub to an InvenioRDM-based repository server. IGA can be invoked from the command line; it also can be set up as a [GitHub Action](https://docs.github.com/en/actions) to archive GitHub releases automatically for a repository each time they are made.
5
+
IGA can create metadata records and send releases from GitHub to an InvenioRDM-based repository server. It can be run as a command line program; it also can be set up as a [GitHub Action](https://docs.github.com/en/actions) to archive GitHub releases in InvenioRDM automatically each time they are made.
Copy file name to clipboardExpand all lines: docs/introduction.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,10 +1,10 @@
1
1
# Introduction
2
2
3
-
[InvenioRDM](https://inveniosoftware.org/products/rdm/) is a research data management (RDM) repository platform based on the [Invenio Framework](https://inveniosoftware.org/products/framework/) and [Zenodo](https://www.zenodo.org). At institutions like Caltech, InvenioRDM is used as the basis for institutional repositories such as [CaltechDATA](https://data.caltech.edu). Of particular interest to software developers is that a repository like [CaltechDATA](https://data.caltech.edu)offers the means to preserve software projects in a long-term archive managed by their institution. Here is a screenshot of an example software project release archived in [CaltechDATA](https://data.caltech.edu):
3
+
[InvenioRDM](https://inveniosoftware.org/products/rdm/) is a research data management (RDM) repository platform based on the [Invenio Framework](https://inveniosoftware.org/products/framework/) and [Zenodo](https://www.zenodo.org). At institutions like Caltech, InvenioRDM is used as the basis for institutional repositories such as [CaltechDATA](https://data.caltech.edu). It offers the means to preserve software and data projects in a long-term archive managed by their institution.
<figcaption>Example of a landing page for a record in CaltechDATA.</figcaption>
7
+
<figcaption>Screenshot of a landing page for a record in <a href="https://data.caltech.edu">CaltechDATA</a>. The source code for version 1.3.5 of the software project <a href="https://data.caltech.edu/records/fqmae-krq60">eprints2archives</a> has been archived in the repository, and this example shows some of the metadata associated with that archived copy.</figcaption>
8
8
</figure>
9
9
10
10
The metadata contained in the record of a deposit is critical to making the record widely discoverable by other people, but it can be tedious and error-prone to enter the metadata by hand. This is where automation such as IGA come in: _IGA can save users the trouble of depositing software and filling out the metadata record in InvenioRDM by performing all the steps automatically._
@@ -50,12 +50,12 @@ IGA looks for `codemeta.json` and `CITATION.cff` files in a repository and uses
50
50
51
51
## Using IGA
52
52
53
-
IGA makes it easy to archive any release from GitHub into an InvenioRDM server. Once you have a personal access token ([PAT](glossary.md#term-PAT)) for InvenioRDM (and optionally for GitHub too) and have set the environment variable `INVENIO_TOKEN` (and optionally `GITHUB_TOKEN`), you can archive a GitHub release as easily as in this example:
53
+
IGA makes it easy to archive any release from GitHub into an InvenioRDM server. Once you have a personal access token ([PAT](glossary.md#term-PAT)) for InvenioRDM (and optionally, one for GitHub too) and have set the environment variable `INVENIO_TOKEN` (and optionally `GITHUB_TOKEN`), you can archive a GitHub release as easily as in this example:
54
54
```shell
55
55
iga -s data.caltech.edu https://github.com/mhucka/taupe/releases/tag/v1.2.0
56
56
```
57
57
IGA will contact GitHub, extract metadata from the release and the repository, construct a metadata record in the format required by InvenioRDM, and send the record plus the GitHub release source archive (a [ZIP](https://en.wikipedia.org/wiki/ZIP_(file_format)) file) to the InvenioRDM server. Various options can modify IGA's behavior, as explained in detail in the section on [command-line usage of IGA](cli-usage.md).
58
58
59
-
Note that the availability of a command-line version of IGA means you can also use it to send _past_ releases to an InvenioRDM server – IGA doesn't care if what you're asking it to archive is the _latest_ release of something; it can archive any release. This makes it useful for archiving past projects; it also makes it possible for institutions to easily perform activities such as archiving software on behalf of faculty and students.
59
+
Note that the availability of a command-line version of IGA means you can also use it to send _past_GitHub releases to an InvenioRDM server – IGA doesn't care if what you're asking it to archive is the _latest_ release of something; it can archive any release. This makes it useful for archiving past projects; it also makes it possible for institutions to easily perform activities such as archiving software on behalf of faculty and students.
60
60
61
61
As a GitHub Action, IGA allows you to set up a GitHub workflow that will automatically send new releases to a designated InvenioRDM server. The procedure for this is detailed in the section on [GitHub Action usage of IGA](gha-usage.md). Once set up, you do not have to remember to send releases of a particular GitHub project to InvenioRDM – it will do it for you.
Copy file name to clipboardExpand all lines: docs/quick-start.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -34,7 +34,7 @@ flowchart TD;
34
34
4. On the page that is shown after you click that button, name your token (the name does not matter) and click the <kbd>Create</kbd> button<figure><imgsrc="_static/media/new-pat.png"width="50%"></figure>
35
35
5. After InvenioRDM creates and shows you the token, **copy it to a safe location** because InvenioRDM will not show it again
36
36
37
-
## Configuring a local IGA
37
+
## Configuring IGA for local use
38
38
39
39
To send a GitHub release to your InvenioRDM server, IGA needs this information:
40
40
1. (Required) The identity of the GitHub release to be archived
Once these are set, use of IGA can be as simple as providing a URL for a release in GitHub. For example, the following command creates a draft record (the `-d` option is short for `--draft`) for another project in GitHub and tells IGA to open (the `-o` option is short for `--open`) the newly-created InvenioRDM entry in a web browser:
52
+
Once these are set, use of IGA can be as simple as providing a URL for a release in GitHub. For example, the following command creates a draft record (the `-d` option is short for `--draft`) for a certain project in GitHub and tells IGA to open (the `-o` option is short for `--open`) the newly-created InvenioRDM entry in a web browser:
53
53
```shell
54
54
iga -d -o https://github.com/mhucka/taupe/releases/tag/v1.2.0
0 commit comments