Skip to content

Commit

Permalink
Release Install Node 2.4.0 for ECS 3.0.0.2 (#338)
Browse files Browse the repository at this point in the history
* Update ECS CE Docker image with ECS 3.0.0 Hotfix 2 (#312)

* Reorg base files (fix my glitch)

* Fixed Dockerfile so it patches everything in-place.

(cherry picked from commit 867189e)

* update release files to use new image.

* Duct tape for #301 Update to ECS 3.0.0.2 (3.0.0 HF 2) (#314)

* fix a small typo

* fix package install issue because EPEL is between versions again.

* quick fixes for crashing HF2 to unblock clients

* Docs update (#313)

* Adds FAQ page

* installation troubleshooting

* formatting

* Addition of network troubleshooting

* Addition of network troubleshooting

* More Troubleshooting

* sidebar implementation attempt

* implements important links dropdown, disables page dropdown.

* whoops

* Adds migration page and some small updates.

* Bunch of docs updates

* bugfix-hf2 (#315)

* multitail and dstat are coming in handy right now

* change fact cache location to /var/cache/emc/ecs-install

* log the state of Docker at the end of bootstrapping
for troubleshooting help (those hashes are good to see!)

* [Ansible] Stop templating, start regex replacing props/confs

* release prep 2.3.0 (#316)

* OVA prep (#318)

* Configure Jenkins pipeline to test installation process

* Get repository information from Jenkins SCM config

* Fix env var

* Obtain TF options from Jenkins params. Moved deprovision step to post action

* Allow multi-node configuration

* Update checkout step in jenkinsfile

* add zerofill.sh to /tools (#324)

(cherry picked from commit 58f7e8eea587c5a005eff3df2c2733ac2f5e1a9c)

* Add slack notifications to jenkins pipeline

* [WiP] Configure Jenkins server to build PR and provide feedback (#328)

Configure Jenkins server to build PR and provide feedback

* Docs pass 2 (#326)

* Removal of deprecated procedures

* Templates

* OVA install guide added

* Fixed broken links

* preflight remove all bootstrap packages if installed (#330)

* Non-PR Jenkins jobs do not provide URL and commit author (#331)

Fix <null> variables in Slack notifications

* put yum actions in retry loop with timeout (#332)

Put yum actions in retry loop with timeout

* Implements #205 Installer must have public key initial auth capability (#270)

* ECS-CommunityEdition-205 Installer must have public key initial auth capability

(cherry picked from commit 6eea10b5db3985f960d7b313d2e705a0f913ba55)

* More sausage for the initial ssh key auth

(cherry picked from commit 8535ccb5430e89b79d253ea1e74390a39b8b20f3)

* more sausage

(cherry picked from commit edf961e0765cd9a06ccea1a6d1e2406816533f46)

* deploy.yml change ideas

(cherry picked from commit ef48e2cc57fa6d0a57aa30bc62ba816fc167aed9)

* bootstrap.sh modifications

(cherry picked from commit d0b3c630f0a2004fe23534aca7e4a95986dce383)

* bootstrap.sh modifications

(cherry picked from commit 86f897af9395a57af5b33c2162cd85422b4e6ded)

* move generic help to generic_help.j2.yml file from config.yml

* include shipit.lib.sh

* build install paths early
add copy action for ssh PKI material

* fix a couple gitopt bugs

* add create_install_tree() to plugin-defaults.sh

* copy ssh keys in bootstrap.sh

* more longopts adjustments

* add loop delay in retry_with_timeout()

* stop trying to autoremove curl, it'll always error.

* key_vals need basename not full path
set 0700 bits on ssh/ssl stores

* remove optarg debugging

* more ssh pubkey sausage

* update reference.deploy.yml to include feature

* jenkins changes

* jenkins changes

* jenkins changes

* jenkins changes

* jenkins changes

* bump versions and move OVA download links. (#335)

* open-vm-tools now has a cross dependency (#337)

with open-vm-tools-desktop and yum fails to install open-vm-tools on remote nodes when open-vm-tools-desktop is not installed.
  • Loading branch information
padthaitofuhot authored Aug 28, 2017
1 parent 6b98d17 commit 0b345ea
Show file tree
Hide file tree
Showing 57 changed files with 1,150 additions and 378 deletions.
Empty file added .github/CONTRIBUTING.md
Empty file.
10 changes: 10 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
### Expected Behavior


### Actual Behavior


### Steps to Reproduce Behavior


### Output
11 changes: 11 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
This pull request addresses the following issue(s): # .


Overview of changes:

-
-
-


@padthaitofuhot @captntuttle @adrianmo
95 changes: 95 additions & 0 deletions Jenkinsfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
pipeline {
agent any

options {
disableConcurrentBuilds()
skipDefaultCheckout()
timeout(time: 1, unit: 'HOURS')
}

parameters {
string(name: 'vsphere_server', defaultValue: '10.1.83.17', description: 'vSphere host')
string(name: 'datastore', defaultValue: 'iSCSI-2', description: 'vSphere datastore')
string(name: 'template', defaultValue: 'jenkins/ecsce-template', description: 'VM template')
string(name: 'resource_pool', defaultValue: 'Cisco UCS Cluster/Resources/Tests', description: 'vSphere resource pool')
string(name: 'datacenter', defaultValue: 'Datacenter', description: 'vSphere datacenter')
string(name: 'network_interface', defaultValue: 'VM Network', description: 'VM network interface')
string(name: 'ecs_nodes', defaultValue: '1', description: 'Number of ECS nodes to be deployed')
}

environment {
VSPHERE = credentials('vsphere_gotham')
SSH = credentials('ssh_credentials')
TF_VAR_vsphere_user = "${VSPHERE_USR}"
TF_VAR_vsphere_password = "${VSPHERE_PSW}"
TF_VAR_vsphere_server = "${params.vsphere_server}"
TF_VAR_datastore = "${params.datastore}"
TF_VAR_template = "${params.template}"
TF_VAR_resource_pool = "${params.resource_pool}"
TF_VAR_datacenter = "${params.datacenter}"
TF_VAR_network_interface = "${params.network_interface}"
TF_VAR_ecs_nodes = "${params.ecs_nodes}"
ANSIBLE_HOST_KEY_CHECKING = "False"
}

stages {
stage('Checkout') {
steps {
checkout scm
script {
// Workaround until the GIT plugin automatically injects these environment variables
env.COMMIT_ID = sh(returnStdout: true, script: 'git rev-parse --short HEAD').trim()
env.AUTHOR_NAME = sh(returnStdout: true, script: 'git show -s --pretty=%an HEAD').trim()
env.REPO_URL = sh(returnStdout: true, script: 'git remote get-url origin').trim()
}
sh 'printenv'
}
}
stage('Install tools') {
steps {
script {
def tfHome = tool name: 'terraform-linux-x64', type: 'com.cloudbees.jenkins.plugins.customtools.CustomTool'
env.PATH = "${tfHome}:${env.PATH}"
}
sh 'terraform --version'
sh 'ansible --version'
}
}
stage('Provision infrastructure') {
steps {
sh 'terraform plan -out=plan tests'
sh 'terraform apply plan'
sh 'terraform output -json > output.json'
}
}
stage('Deploy ECS'){
steps {
sh './tests/tf_to_hosts output.json hosts.ini'
ansiblePlaybook \
playbook: 'tests/ansible/install_node.yml',
inventory: 'hosts.ini',
extraVars: [
ansible_ssh_user: "$SSH_USR",
ansible_ssh_pass: "$SSH_PSW",
ansible_become_pass: "$SSH_PSW",
current_directory: "$WORKSPACE"
],
extras: '-vvv'
}
}
}

post {
always {
echo 'Deprovision infrastructure'
sh 'terraform destroy -force tests'
}
success {
slackSend channel: 'ecs-community-edition', color: 'good', message: "Build <${env.BUILD_URL}|#${env.BUILD_NUMBER}> passed: ${env.JOB_NAME} (<${env.REPO_URL}|${env.COMMIT_ID}>) by ${env.AUTHOR_NAME}"
}
failure {
slackSend channel: 'ecs-community-edition', color: 'danger', message: "Build <${env.BUILD_URL}|#${env.BUILD_NUMBER}> failed: ${env.JOB_NAME} (<${env.REPO_URL}|${env.COMMIT_ID}>) by ${env.AUTHOR_NAME}"
}
}

}
3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -101,8 +101,7 @@ The OVA is shipped as a bootstrapped Install Node. It must be cloned multiple t
* The OVA is configured to acquire network settings via DHCP. Static configurations must be manually configured with `sudo nmtui`

##### OVA Download Links

* [dellemc-ecsce-3.0.0.2-install-node-2.3.0-vm0.ova](http://130852476153187606.public.ecstestdrive.com/public/dellemc-ecsce-3.0.0.2-install-node-2.3.0-vm0.ova)
Please see the [release page](https://github.com/EMCECS/ECS-CommunityEdition/releases) for OVA download links.

#### [ECS Single-Node Deployment with Install Node (recommended)](docs/source/installation/ECS-Installation.md)
Using an Install Node for isolated environments, deploy a stand-alone instance of ECS to a single hardware or virtual machine.
Expand Down
4 changes: 2 additions & 2 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ ECS Community Edition
</h1>

See
`changelog.md <https://github.com/EMCECS/ECS-CommunityEdition/blob/latest/changelog.md>`__
`changelog.md <https://github.com/EMCECS/ECS-CommunityEdition/blob/master/changelog.md>`__
file for release notes.

Description
Expand Down Expand Up @@ -144,7 +144,7 @@ If you prefer to download a prefab Install Node as an OVF/OVA, follow
one of the links below. Please note that OVAs are produced upon each
release and do not necessarily have the most current software.

- `dellemc-ecsce-3.0.0.2-install-node-2.3.0-vm0.ova <http://130852476153187606.public.ecstestdrive.com/public/dellemc-ecsce-3.0.0.2-install-node-2.3.0-vm0.ova>`__
Please see the `release page <https://github.com/EMCECS/ECS-CommunityEdition/releases>`__ for OVA download links.

`ECS Multi-Node Deployment with Install Node (recommended, most reusable, full-featured) <http://ecsce.readthedocs.io/en/latest/installation/ECS-Installation.html>`__
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Expand Down
Loading

0 comments on commit 0b345ea

Please sign in to comment.