Apache Libcloud Website

Clone this repo:
  1. 4b84c67 Add ruby-version file. by Tomaz Muraus · 8 months ago master
  2. 48266bf Test workaroung for header styling issue. by Tomaz Muraus · 8 months ago
  3. cac6570 Remove link to the .tar.bz2 and .zip artifact and add link to the .whl artifact. by Tomaz Muraus · 9 months ago
  4. 09492d2 Add link + image logo to ASF events to the page footer. by Tomaz Muraus · 9 months ago
  5. 8c627a2 Add blog post for v3.8.0 release. by Tomaz Muraus · 9 months ago

Apache Libcloud Website

CI Build Docker Image

This repository contains source code for a Libcloud website powered by Jekyll.

System Dependencies

  • Ruby >= 3.1.1
  • Jekyll >= 4.2.2
  • Gems: bundler (gem install bundler)
  • jpgoptim (optional, for compressing images)
  • optipng (optional, for compressing images)
  • Node.js (optional, needed for Grunt tasks)

You are strongly encouraged to utilize provided Dockerfile which contains all the dependencies which makes building the website a breeze.

Keep in mind that the initial image build may take a while since all the dependencies need to be installed and build, but subsequent runs should be much faster.

In case you want to install all the dependencies locally outside the Docker container, you are encouraged to install and use rvm and use rvm to install Ruby as shown below.

rvm install 3.1.1
rvm use 3.1.1
gem install bundler -v "2.3.0"

Installing Ruby dependencies

rvm use 3.1.1
bundle install

Installing Node.js dependencies

npm install .

Linting code

node_modules/.bin/grunt lint

Running Local Development Server

./scripts/docker-run-dev-server.sh
# Non-Docker versions
#./scripts/run-dev-server.sh

This will start Docker container with local development server listening on port 4000 available at http://localhost:4000/.

Building and Publishing the Website

./scripts/docker-build-site.sh
# Non-Docker versions
#./scripts/build-site.sh
# asf-site for prod, asf-staging for staging
./scripts/stage-changes.sh {asf-site,asf-staging}
git push origin <branch>

Note on pre-built Docker images

To speed up local development, we offer pre-built version of theDocker image used for local development - https://github.com/apache/libcloud-site/pkgs/container/libcloud-site-dev.

This image is used by default when using ./scripts/docker-*.sh scripts.

If for some reason you want to use locally built Docker image (e.g. you have made changes changes to the Dockerfile, Gemfile or similar), you can do that by setting USE_LOCAL_DOCKER_IMAGE=1 environment variable when using those scripts.

For example:

USE_LOCAL_DOCKER_IMAGE=1 ./scripts/docker-run-dev-server.sh

Branch Layout