diff --git a/.github/workflows/lint-batch.yml b/.github/workflows/lint-batch.yml new file mode 100644 index 000000000..d464447b0 --- /dev/null +++ b/.github/workflows/lint-batch.yml @@ -0,0 +1,21 @@ +name: lint batch +on: + push: + branches: + - main + paths-ignore: + - '**.md' + pull_request: + paths-ignore: + - '**.md' + +jobs: + lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - run: sudo apt-get update -y && sudo apt-get install -y libvips + - uses: ruby/setup-ruby@v1 + with: + bundler-cache: true + - run: bundle exec aperitiiif batch lint diff --git a/.github/workflows/publish-batch.yml b/.github/workflows/publish-batch.yml new file mode 100644 index 000000000..b74c2e785 --- /dev/null +++ b/.github/workflows/publish-batch.yml @@ -0,0 +1,41 @@ +name: publish batch + +on: + push: + branches: + - main + paths-ignore: + - '**.md' +jobs: + publish: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - run: sudo apt-get update -y && sudo apt-get install -y libvips + - uses: ruby/setup-ruby@v1 + with: + bundler-cache: true + - run: bundle exec aperitiiif batch build --reset --lint + - uses: jakejarvis/s3-sync-action@master + with: + args: --acl public-read --follow-symlinks + env: + AWS_S3_BUCKET: ${{ secrets.APERITIIIF_IMAGE_SOURCE_BUCKET }} + AWS_ACCESS_KEY_ID: ${{ secrets.APERITIIIF_BUCKET_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.APERITIIIF_BUCKET_SECRET_ACCESS_KEY }} + AWS_REGION: 'us-east-1' + SOURCE_DIR: 'build/image' + - uses: jakejarvis/s3-sync-action@master + with: + args: --acl public-read --follow-symlinks + env: + AWS_S3_BUCKET: ${{ secrets.APERITIIIF_PRESENTATION_BUCKET }} + AWS_ACCESS_KEY_ID: ${{ secrets.APERITIIIF_BUCKET_ACCESS_KEY_ID }} + AWS_SECRET_ACCESS_KEY: ${{ secrets.APERITIIIF_BUCKET_SECRET_ACCESS_KEY }} + AWS_REGION: 'us-east-1' + SOURCE_DIR: 'build/presentation' + - name: publish results + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./build/html diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..8e4845fb3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +.DS_Store +tmp +build +aperitiiif +aperitiiif-cli diff --git a/.ruby-version b/.ruby-version new file mode 100644 index 000000000..ef538c281 --- /dev/null +++ b/.ruby-version @@ -0,0 +1 @@ +3.1.2 diff --git a/.template-version b/.template-version new file mode 100644 index 000000000..6e8bf73aa --- /dev/null +++ b/.template-version @@ -0,0 +1 @@ +0.1.0 diff --git a/Gemfile b/Gemfile new file mode 100644 index 000000000..25db542a3 --- /dev/null +++ b/Gemfile @@ -0,0 +1,4 @@ +source 'https://rubygems.org' + +gem 'aperitiiif', github: 'middlicomp/aperitiiif-cli', tag: 'v0.1.2' +# gem 'aperitiiif', path: 'aperitiiif-cli' diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 000000000..3ebb6d6ed --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,71 @@ +GIT + remote: https://github.com/middlicomp/aperitiiif-cli.git + revision: a91d2e30228ef223348713a021adef9422d98eee + tag: v0.1.2 + specs: + aperitiiif (0.1.2) + colorize + iiif-presentation + liquid + mimemagic + parallel + ruby-progressbar + ruby-vips + safe_yaml + thor + +GEM + remote: https://rubygems.org/ + specs: + activesupport (7.0.4.2) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + colorize (0.8.1) + concurrent-ruby (1.2.0) + faraday (2.7.4) + faraday-net_http (>= 2.0, < 3.1) + ruby2_keywords (>= 0.0.4) + faraday-net_http (3.0.2) + ffi (1.15.5) + i18n (1.12.0) + concurrent-ruby (~> 1.0) + iiif-presentation (1.1.0) + activesupport (>= 3.2.18) + faraday (>= 0.9) + json + json (2.6.3) + liquid (5.4.0) + mimemagic (0.4.3) + nokogiri (~> 1) + rake + minitest (5.17.0) + nokogiri (1.14.0-arm64-darwin) + racc (~> 1.4) + nokogiri (1.14.0-x86_64-darwin) + racc (~> 1.4) + nokogiri (1.14.0-x86_64-linux) + racc (~> 1.4) + parallel (1.22.1) + racc (1.6.2) + rake (13.0.6) + ruby-progressbar (1.11.0) + ruby-vips (2.1.4) + ffi (~> 1.12) + ruby2_keywords (0.0.5) + safe_yaml (1.0.5) + thor (1.2.1) + tzinfo (2.0.5) + concurrent-ruby (~> 1.0) + +PLATFORMS + arm64-darwin-22 + x86_64-darwin-21 + x86_64-linux + +DEPENDENCIES + aperitiiif! + +BUNDLED WITH + 2.3.12 diff --git a/README-template.md b/README-template.md new file mode 100644 index 000000000..f78741cc4 --- /dev/null +++ b/README-template.md @@ -0,0 +1,16 @@ +# aperitiiif-batch-CHANGEME +[![lint batch](https://github.com/nyu-dss/aperitiiif-batch-CHANGEME/actions/workflows/lint-batch.yml/badge.svg)](https://github.com/nyu-dss/aperitiiif-batch-CHANGEME/actions/workflows/lint-batch.yml) [![publish batch](https://github.com/nyu-dss/aperitiiif-batch-CHANGEME/actions/workflows/publish-batch.yml/badge.svg)](https://github.com/nyu-dss/aperitiiif-batch-CHANGEME/actions/workflows/publish-batch.yml) ![repo size](https://img.shields.io/github/repo-size/nyu-dss/aperitiiif-batch-CHANGEME) +[![template version](https://img.shields.io/badge/template%20version-v0.1.0-9cf)](.template-version) + +aperitiiif batch of TODO 🥂 + +## Description + +TO DO + +## Owner(s) +- TODO +- TODO + +## Notes +- TODO diff --git a/README.md b/README.md new file mode 100644 index 000000000..573c96645 --- /dev/null +++ b/README.md @@ -0,0 +1,12 @@ +# aperitiiif-batch-template +[![lint batch](https://github.com/nyu-dss/aperitiiif-batch-template/actions/workflows/lint-batch.yml/badge.svg)](https://github.com/nyu-dss/aperitiiif-batch-template/actions/workflows/lint-batch.yml) [![publish batch](https://github.com/nyu-dss/aperitiiif-batch-template/actions/workflows/publish-batch.yml/badge.svg)](https://github.com/nyu-dss/aperitiiif-batch-template/actions/workflows/publish-batch.yml) +![repo size](https://img.shields.io/github/repo-size/nyu-dss/aperitiiif-batch-template) +[![template version](https://img.shields.io/badge/template%20version-v0.1.0-9cf)](.template-version) + +Small(ish) batch IIIF processing for digital research and scholarship. 🥂 + +This is a template repo including github actions workflows, gem configs, and scaffolding for creating an aperitiiif batch. + +### Related repos: +- **[aperitiiif-cli](https://github.com/nyu-dss/aperitiiif-cli)** : ruby gem for processing batches +- **[aperitiiif](https://github.com/nyu-dss/aperitiiif)** : documentation for the project; publishes to [github pages](https://nyu-dss.github.io/aperitiiif) diff --git a/config.yml b/config.yml new file mode 100644 index 000000000..86f07ee64 --- /dev/null +++ b/config.yml @@ -0,0 +1,14 @@ +# batch config + +label: 'Rijksmuseum Demo' +description: 'Demo collection for aperitiiif service' +attribution: 'Provided by Rijksmuseum via Wikimedia Commons' + +presentation_api_url: 'https://aperitiiif-presentation-api-store.s3.us-east-1.amazonaws.com' +image_api_url: 'https://d1b7k5w7yjwpfg.cloudfront.net/iiif/2' + +records: + file: 'src/records.csv' + defaults: + logo: 'https://upload.wikimedia.org/wikipedia/commons/6/67/Rijks_museum_logo.png' + source: 'https://commons.wikimedia.org/wiki/Category:Prints_by_Katsukawa_Shunsh%C5%8D_in_the_Rijksmuseum_Amsterdam' diff --git a/src/data/kasukawa-001.jpeg b/src/data/kasukawa-001.jpeg new file mode 100755 index 000000000..48f061f9a Binary files /dev/null and b/src/data/kasukawa-001.jpeg differ diff --git a/src/data/kasukawa-002.jpeg b/src/data/kasukawa-002.jpeg new file mode 100755 index 000000000..b060626c8 Binary files /dev/null and b/src/data/kasukawa-002.jpeg differ diff --git a/src/data/kasukawa-003.jpeg b/src/data/kasukawa-003.jpeg new file mode 100755 index 000000000..107494f86 Binary files /dev/null and b/src/data/kasukawa-003.jpeg differ diff --git a/src/data/kasukawa-004.jpeg b/src/data/kasukawa-004.jpeg new file mode 100644 index 000000000..e33da4f4e Binary files /dev/null and b/src/data/kasukawa-004.jpeg differ diff --git a/src/data/kasukawa-005.jpeg b/src/data/kasukawa-005.jpeg new file mode 100755 index 000000000..0a9576a56 Binary files /dev/null and b/src/data/kasukawa-005.jpeg differ diff --git a/src/data/kasukawa-006.jpeg b/src/data/kasukawa-006.jpeg new file mode 100755 index 000000000..922c711b7 Binary files /dev/null and b/src/data/kasukawa-006.jpeg differ diff --git a/src/data/kasukawa-007.jpeg b/src/data/kasukawa-007.jpeg new file mode 100755 index 000000000..dc8c57fc2 Binary files /dev/null and b/src/data/kasukawa-007.jpeg differ diff --git a/src/data/kasukawa-008.jpeg b/src/data/kasukawa-008.jpeg new file mode 100755 index 000000000..5213a1911 Binary files /dev/null and b/src/data/kasukawa-008.jpeg differ diff --git a/src/data/kasukawa-009.jpeg b/src/data/kasukawa-009.jpeg new file mode 100755 index 000000000..48fcd5da3 Binary files /dev/null and b/src/data/kasukawa-009.jpeg differ diff --git a/src/data/kasukawa-010.jpeg b/src/data/kasukawa-010.jpeg new file mode 100755 index 000000000..9db11e024 Binary files /dev/null and b/src/data/kasukawa-010.jpeg differ diff --git a/src/data/kasukawa-011.jpeg b/src/data/kasukawa-011.jpeg new file mode 100755 index 000000000..c6996003f Binary files /dev/null and b/src/data/kasukawa-011.jpeg differ diff --git a/src/data/kasukawa-012/1.jpeg b/src/data/kasukawa-012/1.jpeg new file mode 100755 index 000000000..e33da4f4e Binary files /dev/null and b/src/data/kasukawa-012/1.jpeg differ diff --git a/src/data/kasukawa-012/2.jpeg b/src/data/kasukawa-012/2.jpeg new file mode 100644 index 000000000..e33da4f4e Binary files /dev/null and b/src/data/kasukawa-012/2.jpeg differ diff --git a/src/data/kasukawa-012/3.jpeg b/src/data/kasukawa-012/3.jpeg new file mode 100644 index 000000000..e33da4f4e Binary files /dev/null and b/src/data/kasukawa-012/3.jpeg differ diff --git a/src/records.csv b/src/records.csv new file mode 100644 index 000000000..4dea9f8d6 --- /dev/null +++ b/src/records.csv @@ -0,0 +1,13 @@ +id,meta.Original Filename,label,meta.Artist,description,meta.Date,meta.Medium,source +kasukawa-001,Acteur_Ichikawa_Ebizo_II_in_een_shibaraku_rol-Rijksmuseum_RP-P-1956-649.jpeg,Acteur Ichikawa Ebizo II in een shibaraku rol,Katsukawa Shunshō,,1772,paper,https://commons.wikimedia.org/wiki/File:Acteur_Ichikawa_Ebizo_II_in_een_shibaraku_rol-Rijksmuseum_RP-P-1956-649.jpeg +kasukawa-002,Acteur_Sawamura_Sojuro_II_klaar_om_te_vechten-Rijksmuseum_RP-P-1956-658,Acteur Sawamura Sojuro II klaar om te vechten,Katsukawa Shunshō,,between 1763 and 1767,paper,https://commons.wikimedia.org/wiki/File:Acteur_Sawamura_Sojuro_II_klaar_om_te_vechten-Rijksmuseum_RP-P-1956-658.jpeg +kasukawa-003,Acteur_Yamashita_Kinsaku_II_in_de_rol_van_de_courtisane_Agemaki-Rijksmuseum_RP-P-1956-655,Acteur Yamashita Kinsaku II in de rol van de courtisane Agemaki,Katsukawa Shunshō,,between 1773 and 1777,paper,https://commons.wikimedia.org/wiki/File:Acteur_Yamashita_Kinsaku_II_in_de_rol_van_de_courtisane_Agemaki-Rijksmuseum_RP-P-1956-655.jpeg +kasukawa-004,Acteurstriptiek-Rijksmuseum_RP-P-2008-246,Acteurstriptiek,Katsukawa Shunshō,,circa 1770,paper,https://commons.wikimedia.org/wiki/File:Acteurstriptiek-Rijksmuseum_RP-P-2008-246.jpeg +kasukawa-005,Acteur_Ichikawa_Danjuro_IV_in_de_rol_van_de_geest_Ki_no_Natora-Rijksmuseum_RP-P-1956-662.jpeg,The Actor Ichikawa Danjuro IV in the Role of the Spirit Ki no Natora,Katsukawa Shunshō,"Man with bushy hair and in grey clothing, holding a large stick in both hands.",1765,woodcut on paper,https://commons.wikimedia.org/wiki/File:Acteur_Ichikawa_Danjuro_IV_in_de_rol_van_de_geest_Ki_no_Natora-Rijksmuseum_RP-P-1956-662.jpeg +kasukawa-006,Acteur_Ichikawa_Yaozo_met_lang_zwaard-Rijksmuseum_RP-P-1956-651,The Actor Ichikawa Yaozō with Long Sword,Katsukawa Shunshō,"The actor Ichikawa Yaozō, in a robe with fan pattern, holding a sword in his left hand, standing in front of a washitsu, on a wooden verandaunderneath a roof.",1771,woodcut on paper,https://commons.wikimedia.org/wiki/File:Acteur_Ichikawa_Yaozo_met_lang_zwaard-Rijksmuseum_RP-P-1956-651.jpeg +kasukawa-007,Acteur_Nakamura_Nakazo_I_een_pilaar_optillend-Rijksmuseum_RP-P-1956-653,The Actor Nakamura Nakazo I Lifting a Column,Katsukawa Shunshō,"The actor Nakamura Nakazo I in the role of a samurai, on one knee, his left arm holding a stone column. On the background a stone torii. On the column the name of the Buddhist god Fudō-myōō is written. Left page of a diptych.",Between 1773 and 1777,woodcut on paper,https://commons.wikimedia.org/wiki/File:Acteur_Nakamura_Nakazo_I_een_pilaar_optillend-Rijksmuseum_RP-P-1956-653.jpeg +kasukawa-008,Acteur_in_de_rol_van_struikrover-Rijksmuseum_RP-P-1956-656,Actor in the Role of a Brigand,Katsukawa Shunshō,"Man wearing sandals, in black and orange clothing, holding a black lantern in his right hand and a sword in his left, standing in front of a reed fence.",Between 1780 and 1790,woodcut on paper,https://commons.wikimedia.org/wiki/File:Acteur_in_de_rol_van_struikrover-Rijksmuseum_RP-P-1956-656.jpeg +kasukawa-009,Minamoto_no_Yoritomo_en_Yuki_Onna_in_de_sneeuw.-Rijksmuseum_RP-P-2007-144,Minamoto no Yoritomo en Yuki Onna in de sneeuw.,Katsukawa Shunshō,,1770,paper,https://commons.wikimedia.org/wiki/File:Minamoto_no_Yoritomo_en_Yuki_Onna_in_de_sneeuw.-Rijksmuseum_RP-P-2007-144.jpeg +kasukawa-010,Twee_acteurs-Rijksmuseum_RP-P-2008-217.jpeg,Twee acteurs,Katsukawa Shunshō,,between 1780 and 1790,paper,https://commons.wikimedia.org/wiki/File:Twee_acteurs-Rijksmuseum_RP-P-2008-217.jpeg +kasukawa-011,Vrouw_bij_rivier-Rijksmuseum_RP-P-2008-187,Vrouw bij rivier,Katsukawa Shunshō,,1766,paper,https://commons.wikimedia.org/wiki/File:Vrouw_bij_rivier-Rijksmuseum_RP-P-2008-187.jpeg +kasukawa-012,Acteurstriptiek-Rijksmuseum_RP-P-2008-246,Acteurstriptiek x 3,Katsukawa Shunshō,,circa 1770,paper,https://commons.wikimedia.org/wiki/File:Acteurstriptiek-Rijksmuseum_RP-P-2008-246.jpeg