mirror of https://github.com/istio/istio.io.git
				
				
				
			
		
			
				
	
	
		
			122 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			122 lines
		
	
	
		
			3.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
| #!/bin/bash
 | ||
| 
 | ||
| # Copyright Istio Authors
 | ||
| #
 | ||
| # Licensed under the Apache License, Version 2.0 (the "License");
 | ||
| # you may not use this file except in compliance with the License.
 | ||
| # You may obtain a copy of the License at
 | ||
| #
 | ||
| #    http://www.apache.org/licenses/LICENSE-2.0
 | ||
| #
 | ||
| # Unless required by applicable law or agreed to in writing, software
 | ||
| # distributed under the License is distributed on an "AS IS" BASIS,
 | ||
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | ||
| # See the License for the specific language governing permissions and
 | ||
| # limitations under the License.
 | ||
| 
 | ||
| # Build the archive site
 | ||
| 
 | ||
| set -e
 | ||
| 
 | ||
| BASEURL="$1"
 | ||
| 
 | ||
| # List of name:tagOrBranch
 | ||
| # This is a list of archived versions
 | ||
| # TODO: rename TOBUILD to ARCHIVED_VERSIONS
 | ||
| TOBUILD=(
 | ||
|   v1.4:release-1.4
 | ||
|   v1.3:release-1.3
 | ||
|   v1.2:release-1.2
 | ||
|   v1.1:release-1.1
 | ||
|   v1.0:release-1.0
 | ||
|   v0.8:release-0.8
 | ||
| )
 | ||
| 
 | ||
| TOBUILD_JEKYLL=(
 | ||
|   v0.7:release-0.7
 | ||
|   v0.6:release-0.6
 | ||
|   v0.5:release-0.5
 | ||
|   v0.4:release-0.4
 | ||
|   v0.3:release-0.3
 | ||
|   v0.2:release-0.2
 | ||
|   v0.1:release-0.1
 | ||
| )
 | ||
| 
 | ||
| # Prepare
 | ||
| TMP=$(mktemp -d)
 | ||
| mkdir "${TMP}/archive"
 | ||
| 
 | ||
| pushd "${TMP}" || exit
 | ||
| git clone -q https://github.com/istio/istio.io.git
 | ||
| pushd "istio.io" || exit
 | ||
| 
 | ||
| for rel in "${TOBUILD[@]}"; do
 | ||
|   NAME=$(echo "$rel" | cut -d : -f 1)
 | ||
|   TAG=$(echo "$rel" | cut -d : -f 2)
 | ||
|   URL=${BASEURL}/${NAME}
 | ||
| 
 | ||
|   echo "### Building '${NAME}' from ${TAG} for ${URL}"
 | ||
|   git checkout "${TAG}"
 | ||
| 
 | ||
|   if [[ "${TAG}" == "release-1.2" || "${TAG}" == "release-1.3" ]]; then
 | ||
|     scripts/build_site.sh
 | ||
|   fi
 | ||
| 
 | ||
|   scripts/gen_site.sh "${URL}"
 | ||
| 
 | ||
|   if [[ "${TAG}" != "release-0.8" && "${TAG}" != "release-1.0" && "${TAG}" != "release-1.1" && "${TAG}" != "release-1.2" && "${TAG}" != "release-1.3" ]]; then
 | ||
|     scripts/build_site.sh "${URL}"
 | ||
|   fi
 | ||
| 
 | ||
|   mv public "${TMP}/archive/${NAME}"
 | ||
|   echo "- name:  \"${NAME}\"" >> "${TMP}/archives.yml"
 | ||
| 
 | ||
|   git clean -f
 | ||
| done
 | ||
| 
 | ||
| for rel in "${TOBUILD_JEKYLL[@]}"; do
 | ||
|   NAME=$(echo "$rel" | cut -d : -f 1)
 | ||
|   TAG=$(echo "$rel" | cut -d : -f 2)
 | ||
|   URL=${BASEURL}/${NAME}
 | ||
| 
 | ||
|   echo "### Building '${NAME}' from ${TAG} for ${URL}"
 | ||
|   git checkout "${TAG}"
 | ||
|   echo "baseurl: ${URL}" > config_override.yml
 | ||
| 
 | ||
|   bundle install
 | ||
|   bundle exec jekyll build --config _config.yml,config_override.yml
 | ||
|   bundle clean --force
 | ||
| 
 | ||
|   mv _site "${TMP}/archive/${NAME}"
 | ||
|   echo "- name:  \"${NAME}\"" >> "${TMP}/archives.yml"
 | ||
| 
 | ||
|   git clean -f
 | ||
| done
 | ||
| 
 | ||
| # delete this pesky command as it overrides the sass version we explicitly installed and want to be using
 | ||
| # shellcheck disable=SC2230
 | ||
| rm -fr "$(which sass)"
 | ||
| 
 | ||
| echo "### Building landing page"
 | ||
| popd || exit
 | ||
| popd || exit
 | ||
| 
 | ||
| # Adjust a few things for archive_landing
 | ||
| rm -fr content/en/about content/en/docs content/en/faq content/en/blog content/en/news content/zh
 | ||
| rm -fr static/talks
 | ||
| sed -i 's/preliminary: true/preliminary: false/g' data/args.yml
 | ||
| sed -i 's/archive_landing: false/archive_landing: true/g' data/args.yml
 | ||
| 
 | ||
| # Grab the state
 | ||
| cp "${TMP}/archives.yml" data
 | ||
| 
 | ||
| scripts/gen_site.sh
 | ||
| scripts/build_site.sh "$1"
 | ||
| 
 | ||
| mv public/* "${TMP}/archive"
 | ||
| rm -fr public
 | ||
| mv "${TMP}/archive" public
 | ||
| rm -fr "${TMP}"
 | ||
| 
 | ||
| echo "All done!"
 |