├── .gitignore
├── .travis.yml
├── DESCRIPTION
├── README.md
├── TEST_Workshop.md
├── USING_THE_AMI.md
├── _bookdown.yml
├── _build.sh
├── _deploy.sh
├── _output.yml
├── index.Rmd
├── inst
└── docker
│ ├── Dockerfile
│ └── notes.add_packages.txt
└── preamble.tex
/.gitignore:
--------------------------------------------------------------------------------
1 | # History files
2 | .Rhistory
3 | .Rapp.history
4 |
5 | # Session Data files
6 | .RData
7 |
8 | # Example code in package build process
9 | *-Ex.R
10 |
11 | # Output files from R CMD build
12 | /*.tar.gz
13 |
14 | # Output files from R CMD check
15 | /*.Rcheck/
16 |
17 | # RStudio files
18 | .Rproj.user/
19 |
20 | # produced vignettes
21 | vignettes/*.html
22 | vignettes/*.pdf
23 |
24 | # OAuth2 token, see https://github.com/hadley/httr/releases/tag/v0.3
25 | .httr-oauth
26 |
27 | # knitr and R markdown default cache directories
28 | /*_cache/
29 | /cache/
30 |
31 | # Temporary files created by R markdown
32 | *.utf8.md
33 | *.knit.md
34 |
35 | # Shiny token, see https://shiny.rstudio.com/articles/shinyapps.html
36 | rsconnect/
37 | _book
38 | /_bookdown_files/plyrangesTximeta_files/figure-html/unnamed-chunk-28-1.png
39 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: r
2 | r: bioc-devel
3 |
4 | sudo: false
5 |
6 | cache:
7 | packages: yes
8 | directories:
9 | - $TRAVIS_BUILD_DIR/_bookdown_files
10 |
11 | before_script:
12 | - chmod +x ./_build.sh
13 | - chmod +x ./_deploy.sh
14 |
15 | script:
16 | - ./_build.sh
17 | - ./_deploy.sh
18 |
19 |
--------------------------------------------------------------------------------
/DESCRIPTION:
--------------------------------------------------------------------------------
1 | Package: BiocWorkshops2019
2 | Type: Book
3 | Title: Bioconductor 2019 Conference Workshops
4 | Version: 3.9.1
5 | Depends: R (>= 3.6.0), R (< 3.7.0)
6 | Imports:
7 | plyrangesTximetaCaseStudy,
8 | motifStackWorkshop,
9 | PublicDataResources,
10 | BioconductorOnContainers,
11 | BiocCloudws,
12 | EpiForBioWorkshop,
13 | BioC19CWL,
14 | OSCABioc2019,
15 | enrichOmics,
16 | CNVWorkshop,
17 | plyrangesWorkshops,
18 | bioc2019singlecell,
19 | ATACseqQCWorkshop,
20 | Bioc2019PanCancerStudy,
21 | Bioc2019Anno,
22 | Bioc2019pathwayPCA,
23 | BiocIntro,
24 | recountWorkshop2019,
25 | MultiAssayWorkshop,
26 | genomeRegionPooling,
27 | DelayedArrayWorkshop,
28 | muscWorkshop,
29 | iSEEWorkshop2019,
30 | MicrobiomeWorkshop
31 | Remotes:
32 | rstudio/bookdown,
33 | mikelove/plyrangesTximetaCaseStudy,
34 | jianhong/motifStackWorkshop,
35 | waldronlab/PublicDataResources,
36 | nturaga/BioconductorOnContainers,
37 | BiocCloudws=vjcitn/Bioc2019CloudWkshop,
38 | cmirzayi/EpiForBioWorkshop,
39 | hubentu/BioC19CWL,
40 | robertamezquita/OSCABioc2019,
41 | waldronlab/enrichOmics,
42 | waldronlab/CNVWorkshop,
43 | sa-lee/plyrangesWorkshops,
44 | drisso/bioc2019singlecell,
45 | haibol2016/ATACseqQCWorkshop,
46 | TransBioInfoLab/Bioc2019PanCancerStudy,
47 | jmacdon/Bioc2019Anno,
48 | TransBioInfoLab/Bioc2019pathwayPCA,
49 | Bioconductor/BiocIntro@BioC2019,
50 | LieberInstitute/recountWorkshop2019,
51 | waldronlab/MultiAssayWorkshop,
52 | genomeRegionPooling=databio/genome-region-workshop,
53 | DelayedArrayWorkshop=PeteHaitch/BioC2019_DelayedArray_workshop,
54 | muscWorkshop=HelenaLC/BioC2019-workshop_multi-scRNA-seq,
55 | kevinrue/iSEEWorkshop2019,
56 | waldronlab/MicrobiomeWorkshop
57 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 | This repository contains details of the build process and usage for materials
3 | from the [Bioc2019 conference].
4 |
5 | [Bioc2019 conference]: https://bioc2019.bioconductor.org
6 |
7 | # Compiled Workshops Link
8 |
9 | https://rebrand.ly/biocworkshops2019
10 |
11 | # Running workshop materials locally
12 |
13 | The workshops (except the CWL workshop) are all installed and
14 | ready-to-run inside [docker]; you will need to *install docker* on your machine to
15 | follow along. We have a base docker image [seandavi/bioc_2019] that contains
16 | the operating system and base R installation. The workshops and additional package (over 600)
17 | are included as a separate download that can be mounted into the container
18 | as a `volume`. To use the entire set of workshop materials, do:
19 |
20 | - Make a directory for the installed packages:
21 |
22 | ```
23 | mkdir /home/ubuntu/bioc-libs # or another convenient directory with about 20GB of free space
24 | ```
25 |
26 | - Download and untar entire tar.gz file with all installed packages and materials:
27 |
28 | ```
29 | cd /home/ubuntu/bioc-libs # use the directory from above
30 | wget https://s3.amazonaws.com/biocbuild.cancerdatasci.org/bioc2019-usr-local.tar.gz
31 | tar -xzf bioc2019-usr-local.tar.gz
32 | ```
33 |
34 | - Run docker locally with (you may or may not need `sudo` depending on your docker setup):
35 |
36 | ```
37 | # again, use the directory from above
38 | sudo docker run --name bioc_2019 -d -v /home/ubuntu/bioc-libs:/usr/local/lib/R/site-library \
39 | -p 80:8787 -e PASSWORD=bioc seandavi/bioc_2019
40 | ```
41 |
42 | - Credentials:
43 | - username: 'rstudio'
44 | - password: 'as you set it--bioc above'
45 |
46 | [docker]: https://docker.io
47 | [seandavi/bioc_2019]: https://cloud.docker.com/u/seandavi/repository/docker/seandavi/bioc_2019
48 |
49 |
50 | # Instructions For Workshop Authors
51 |
52 | ## Getting started
53 |
54 | To contribute a new workshop, open a [BiocWorkshops issue][] starting with
55 | the `[Workshop]` keyword in the title of the issue. Provide a link to the
56 | repository in the issue message body. You may also include GitHub usernames
57 | of workshop collaborators. For a successful workshop build, adhere to the
58 | following:
59 |
60 | 1. Package your workshop as an R package. The example package https://github.com/lpantano/dummychapter1 demonstrates all key elements of how your package must be prepared, and also provides an example `.travis.yml` for Continuous Integration against bioc-devel.
61 | 2. Include a standard vignette in the vignettes directory
62 | 3. Put any extra files (images, .bib) in `inst/vignettes` and reference them
63 | in the vignette using `system.file`
64 | 4. Number **3** requires package chapter installation before vignette build or
65 | `build_vignettes=TRUE` when building the package.
66 | 5. Use only one top-level section (`#`), for the title of your workshop. All other sections must be second-level (`##`) or lower. You may find the [usage section of the Bookdown documentation](https://bookdown.org/yihui/bookdown/usage.html) helpful for background.
67 | 6. Do not use `BiocStyle` functionality. The style will be based on bookdown/gitbook.
68 |
69 | ### DESCRIPTION
70 |
71 | Update the DESCRIPTION file adding packages utilized in your workshop to
72 | the **Imports** field.
73 |
74 | ### Use bioc-devel
75 |
76 | BioC2019 workshops will run on **bioc-devel (3.10)**. That means that this book will be built on bioc-devel, workshop participants will use virtual machines running bioc-devel, and your workshops will be tested against bioc-devel. See [Using ‘bioc-devel’ during mid-April to mid-October](https://www.bioconductor.org/developers/how-to/useDevel/) for how to run bioc-devel; thankfully we are in the easy time of year for running release and devel side-by-side. Also, the [dummy chapter](https://github.com/lpantano/dummychapter1) includes a highly recommendable TravisCI setup for Continuous Integration against bioc-devel.
77 |
78 | ## Deadlines for Bioc2019
79 |
80 | Please be aware of the following deadlines for the [Bioconductor 2019 Conference][] in New York
81 |
82 | - **Mon May 27:** draft workshop materials submitted as an Issue to this Bioconductor GitHub repo
83 | - **Mon June 10:** complete workshop submitted. Only bugfixes / refinements should be made after this point.
84 | - **Mon June 17:** All workshops complete and building without error. No new commits to contributor repos will be incorporated.
85 |
86 | [BiocWorkshops issue]: https://github.com/Bioconductor/BiocWorkshops2019/issues
87 | [Bioconductor 2019 Conference]: https://bioc2019.bioconductor.org/
88 |
89 |
This work is licensed under a Creative Commons Attribution 4.0 International License.
90 |
--------------------------------------------------------------------------------
/TEST_Workshop.md:
--------------------------------------------------------------------------------
1 | # Testing your Bioconductor Workshop on Travis CI
2 |
3 | Please refer to this website for detailed instructions on setting up Travis to
4 | build your Bioconductor Workshop chapter:
5 | https://bookdown.org/yihui/bookdown/github.html
6 |
7 | Be sure to enable Travis for your *fork* of the workshops repository by going
8 | to: https://www.travis-ci.org/account/repositories and moving the slider to the
9 | right.
10 |
11 | ## GitHub Personal Access Token
12 |
13 | In order to set up Travis, you will need a GitHub PAT.
14 | You can generate one via the `usethis` package:
15 |
16 | ```r
17 | library(usethis)
18 |
19 | ## Check to see if a PAT exists already:
20 | github_token()
21 |
22 | ## If it doesn't, run this and follow instructions:
23 | browse_github_token()
24 | ```
25 |
26 | You will then need to save the environment variable via Travis in your
27 | repository's settings by going to the Travis CI website page for your
28 | project.
29 |
30 | ## Creating a `gh-pages` branch
31 |
32 | To build your chapter, you will need to create a GitHub Pages branch.
33 | You can use the following commands to `checkout` the branch and to clear
34 | the current directory in the branch:
35 |
36 | ```
37 | git checkout --orphan gh-pages
38 | git rm -rf .
39 |
40 | # create a hidden file .nojekyll
41 | touch .nojekyll
42 | git add .nojekyll
43 | ```
44 |
45 | Then commit the branch to GitHub:
46 |
47 | ```
48 | git commit -m "Initial commit"
49 | git push origin gh-pages
50 | ```
51 |
52 | ## Files to include in your repository
53 |
54 | To build your book / chapter, you will need a few files:
55 |
56 | * `_bookdown.yml`
57 | * `.travis.yml`
58 | * `_build.sh`
59 | * `_deploy.sh`
60 | * `DESCRIPTION`
61 |
62 | See the templates in the `BiocWorkshops2019` folder.
63 |
64 |
--------------------------------------------------------------------------------
/USING_THE_AMI.md:
--------------------------------------------------------------------------------
1 | ## Using the Amazon Machine Image
2 |
3 | The AMI ID is currently: `ami-06a87b03fb3cdf14c`
4 |
5 | You can launch the AMI using the command line `aws` utility, an SDK like boto3/python, or
6 | from the Amazon Web Services Console.
7 |
8 | ### Security group
9 |
10 | The following ports need to be open:
11 |
12 | - Port 80 (rstudio running on docker)
13 | - Port 8080 (rstudio running on AMI hardware)
14 | - Port 22 (for ssh access to machine)
15 |
16 | ## FAQ
17 |
18 | - What is the difference between the port 80 and port 8080 versions?
19 |
20 | The port 80 version is identical to what you would get if you follow the [RUN_LOCAL.md](RUN_LOCAL.md) instructions.
21 | The port 8080 includes installed `docker`, `cwltool`, and `hisat2` for running CWL-based workflows, etc.
22 |
23 | - What is the username and password?
24 | - Port 80:
25 | - username: `rstudio`
26 | - password: `bioc`
27 | - Port 8080
28 | - username: `ubuntu`
29 | - password: `bioc`
30 |
--------------------------------------------------------------------------------
/_bookdown.yml:
--------------------------------------------------------------------------------
1 | book_filename: "_BioC2019.md"
2 | pagetitle: "Bioconductor 2019 Workshops"
3 | new_session: yes
4 |
5 | language:
6 | ui:
7 | chapter_name: "Chapter "
8 |
9 | delete_merged_file: true
10 |
11 |
--------------------------------------------------------------------------------
/_build.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | set -ev
4 |
5 | Rscript -e "bookdown::render_book('index.Rmd', 'bookdown::gitbook')"
6 | Rscript -e "bookdown::render_book('index.Rmd', 'bookdown::pdf_book')"
7 | Rscript -e "bookdown::render_book('index.Rmd', 'bookdown::epub_book')"
8 |
9 |
--------------------------------------------------------------------------------
/_deploy.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | set -e
4 |
5 | [ -z "${GITHUB_PAT}" ] && exit 0
6 | [ "${TRAVIS_BRANCH}" != "master" ] && exit 0
7 |
8 | git config --global user.email "user.email@example.org"
9 | git config --global user.name "user-name"
10 |
11 | git clone -b gh-pages https://${GITHUB_PAT}@github.com/${TRAVIS_REPO_SLUG}.git book-output
12 | cd book-output
13 | cp -r ../_book/* ./
14 | git add --all *
15 | git commit -m "Update the book" || true
16 | git push -q origin gh-pages
17 |
18 |
--------------------------------------------------------------------------------
/_output.yml:
--------------------------------------------------------------------------------
1 | bookdown::gitbook:
2 | config:
3 | toc:
4 | collapse: section
5 | before: |
6 |