zoukankan      html  css  js  c++  java
  • 使用CSDN CODE来存放OPENSTACK位于GITHUB上的源代码

    use CSDN CODE to pull openstack codes

    Author:Hyphen

    问题

    直接从GITHUB上获代替码,常常是没保障,特别是用DEVSTACK的时候,常常超时,所以我想到了每天把GITHUB上的代码更新到本地的想法。

    但本地还要搞一套GIT服务环境,并且也仅仅是自己用,为何不使用公开的软件库呢,之前记得OSCHINA和CSDN 都搞GIT。相比之下,使用了CSDN CODE,使用起来就跟GITHUB一样,但有个问题是容量如今默认仅仅给我一个G,昨天把OPENSTACK,OPENSTACK-DEV,STACKFORGE这三个文件夹下。DEVSTACK安装时要用到的库都同步了下,大半个G。

    解决方式

    我就是在我本地一个实例上。为每一个软件库建立一个文件夹,然后PULL GITHUB上的代码,切换远程URL为CSDN CODE我的软件库,PUSH代码。这些都写了个循环的脚本来做。初定每天更新一次。定时。 CSDN CODE我的软件库 https://code.csdn.net/yanheven1/

    sync_git.sh

    1. #!/bin/sh -x
    2. PROJECT=("ceilometer" "cinder" "glance" "heat" "horizon" "ironic" "keystone" "neutron" "nova" "sahara" "swift" "trove" "requirements" "tempest" "tempest-lib" "python-ceilometerclient" "python-cinderclient" "python-glanceclient" "python-heatclient" "python-ironicclient" "python-keystoneclient" "python-neutronclient" "python-novaclient" "python-saharaclient" "python-swiftclient" "python-troveclient" "python-openstackclient" "cliff" "pycadf" "stevedore" "taskflow" "glance_store" "heat-cfntools" "heat-templates" "django_openstack_auth" "keystonemiddleware" "diskimage-builder" "os-apply-config" "os-collect-config" "os-refresh-config" "tripleo-image-elements" "ironic-python-agent")
    3. PROJECT_STACKFORGE=("swift3" "wsme" "pecan" "sqlalchemy-migrate")
    4. PROJECT_OPENSTACK_DEV=("pbr" "devstack")
    5. PROJECT_OSLO=("oslo.concurrency" "oslo.config" "oslo.context" "oslo.db" "oslo.i18n" "oslo.log" "oslo.messaging" "oslo.middleware" "oslo.rootwrap" "oslo.serialization" "oslo.utils" "oslo.vmware")
    6. PROJECT_OSLO_NAME=("oslo-concurrency" "oslo-config" "oslo-context" "oslo-db" "oslo-i18n" "oslo-log" "oslo-messaging" "oslo-middleware" "oslo-rootwrap" "oslo-serialization" "oslo-utils" "oslo-vmware")
    7. for pro in "${PROJECT[@]}";do mkdir /home/$pro;done
    8. for pro in "${PROJECT_STACKFORGE[@]}";do mkdir /home/$pro;done
    9. for pro in "${PROJECT_OPENSTACK_DEV[@]}";do mkdir /home/$pro;done
    10. for pro in "${PROJECT_OSLO[@]}";do mkdir /home/$pro;done
    11. GIT_OPENSTACK=https://github.com/openstack
    12. GIT_STACKFORGE=https://github.com/stackforge
    13. GIT_OPENSTACK_DEV=https://github.com/openstack-dev
    14. GIT_CSDN=git@code.csdn.net:yanheven1
    15. for pro in "${PROJECT[@]}"
    16. do
    17. cd /home/$pro
    18. git init
    19. git remote add origin $GIT_OPENSTACK/$pro.git
    20. git pull origin master
    21. git remote rm origin
    22. git remote add origin $GIT_CSDN/$pro.git
    23. git push origin master
    24. git remote rm origin
    25. done
    26. for pro in "${PROJECT_STACKFORGE[@]}"
    27. do
    28. cd /home/$pro
    29. git init
    30. git remote add origin $GIT_STACKFORGE/$pro.git
    31. git pull origin master
    32. git remote rm origin
    33. git remote add origin $GIT_CSDN/$pro.git
    34. git push origin master
    35. git remote rm origin
    36. done
    37. for pro in "${PROJECT_OPENSTACK_DEV[@]}"
    38. do
    39. cd /home/$pro
    40. git init
    41. git remote add origin $GIT_OPENSTACK_DEV/$pro.git
    42. git pull origin master
    43. git remote rm origin
    44. git remote add origin $GIT_CSDN/$pro.git
    45. git push origin master
    46. git remote rm origin
    47. done
    48. for ((i=0;i<12;i++))
    49. do
    50. cd /home/${PROJECT_OSLO[$i]}
    51. git init
    52. git remote add origin $GIT_OPENSTACK/${PROJECT_OSLO[$i]}.git
    53. git pull origin master
    54. git remote rm origin
    55. git remote add origin $GIT_CSDN/${PROJECT_OSLO_NAME[$i]}.git
    56. git push origin master
    57. git remote rm origin
    58. done

    然后定时运行:

    1. 0 * * * * sh /home/git.sh

    最后改动下DEVSTACK以下的stackrc文件里的软件库URL就可以使用:

    1. sed -i "s/{GIT_BASE}/openstack/oslo./{GIT_BASE}/oslo-/g" /home/stack/devstack/stackrc
    2. sed -i "s/{GIT_BASE:-git://git.openstack.org}/{GIT_BASE:-https://code.csdn.net/yanheven1}/g" /home/stack/devstack/stackrc
    3. sed -i "s/{GIT_BASE}/stackforge/{GIT_BASE}/g" /home/stack/devstack/stackrc
    4. sed -i "s/{GIT_BASE}/openstack/{GIT_BASE}/g" /home/stack/devstack/stackrc
    5. sed -i "s/{GIT_BASE}/openstack-dev/{GIT_BASE}/g" /home/stack/devstack/stackrc
  • 相关阅读:
    《楞严经四种清净明诲》 (转自学佛网:http://www.xuefo.net/nr/article56/559965.html)
    忏悔言情小说带来的意淫以及对治方法 (转自学佛网:http://www.xuefo.net/nr/article55/554935.html)
    一个80后妈妈的邪淫忏悔(转自学佛网:http://www.xuefo.net/nr/article55/551761.html)
    邪淫真正的可怕危害 (转自学佛网:http://www.xuefo.net/nr/article54/544414.html)
    净空法师详解《般若波罗蜜多心经》,转给有缘人
    净空法师主讲:净业三福【全2集】
    《阿含经》的思想
    佛教最早时期的根本经典 《阿含经》为何如此重要?
    弘一法师妙解《心经》
    读唯识三十颂讲话日记 原创: 李美君 那兰陀广场
  • 原文地址:https://www.cnblogs.com/lxjshuju/p/6838241.html
Copyright © 2011-2022 走看看