phpBB EPV


nedka

nedka

Quản trị viên
19/09/2016 16:05

phpBB EPV
phpBB EPV (Extension Pre Validator) là công cụ kiểm tra tự động các yêu cầu bắt buộc của phpBB với các gói mở rộng, trước khi nó được kiểm tra lại thủ công và duyệt đăng lên thư viện gói mở rộng của họ.


Tải về
Bạn có thể tải về phpBB EPV từ GitHub: https://github.com/phpbb/epv/releases


Sử dụng trên máy
phpBB EPV chỉ chạy từ cửa sổ dòng lệnh, bạn có thể dùng bất cứ chương trình nào theo ý thích của mình, như Command Prompt (cmd.exe) trên Windows hay Terminal trên Mac và Linux.

Dùng lệnh cd chuyển đến thư mục gốc của phpBB EPV.

Kiểm tra gói mở rộng trên máy:

Chép
php src/EPV.php run --dir="đường_dẫn_thư_mục_gốc_gói_mở_rộng"
Kiểm tra từ GitHub:
Chép
php src/EPV.php run --github="tên_tài_khoản/tên_dự_án"
Ví dụ, tên tài khoản GitHub của bạn là vinabb và tên dự án (repository) là demo, thì bạn nhập lệnh:
Chép
php src/EPV.php run --github="vinabb/demo"
Cú pháp trên chỉ kiểm tra nhánh mặc định (default branch) của dự án, thường mặc định là master. Nếu bạn muốn kiểm tra nhánh khác, hoặc đôi khi một dự án chứa nhiều gói mở rộng theo đường dẫn con, thì ta xác định đường dẫn cụ thể:
Chép
php src/EPV.php run --git="https://github.com/tên_tài_khoản/tên_dự_án/đường_dẫn_con"
Ví dụ:
Chép
php src/EPV.php run --git="https://github.com/vinabb/demo/tree/master"

Sử dụng trực tuyến
phpBB.com hiện cung cấp phpBB EPV chạy trực tuyến tại đây, tuy nhiên, công cụ trực tuyến này chỉ hỗ trợ kiểm tra từ GitHub.


PHPUnit


nedka

nedka

Quản trị viên
19/09/2016 16:05

...


Travis CI


nedka

nedka

Quản trị viên
19/09/2016 16:05

Từ thư mục gốc của gói mở rộng đang viết, tạo tập tin .travis.yml với nội dung sau:

Chép
sudo: required

language: php

matrix:
  include:
    - php: 5.4
      env: DB=mysqli
    - php: 5.4
      env: DB=mysqli #myisam
    - php: 5.4
      env: DB=mysql
    - php: 5.4
      env: DB=mariadb
    - php: 5.4
      env: DB=postgres
    - php: 5.4
      env: DB=sqlite3
    - php: 5.5
      env: DB=mysqli
    - php: 5.6
      env: DB=mysqli
    - php: 7.0
      env: DB=mysqli
    - php: hhvm
      env: DB=mysqli
  allow_failures:
    - php: hhvm
  fast_finish: true

env:
  global:
    - EXTNAME="vinabb/demo" # CHANGE name of the extension HERE
    - SNIFF="1"        # Should we run code sniffer on your code?
    - IMAGE_ICC="1"    # Should we run icc profile sniffer on your images?
    - EPV="1"          # Should we run EPV (Extension Pre Validator) on your code?
    - PHPBB_BRANCH="3.2.x"

branches:
  only:
    - master

install:
  - travis/prepare-phpbb.sh $EXTNAME $PHPBB_BRANCH
  - cd ../../phpBB3
  - travis/prepare-extension.sh $EXTNAME $PHPBB_BRANCH
  - travis/setup-phpbb.sh $DB $TRAVIS_PHP_VERSION $NOTESTS
  - ../vinabb/demo/travis/prepare-epv.sh $EPV $NOTESTS

before_script:
  - travis/setup-database.sh $DB $TRAVIS_PHP_VERSION $NOTESTS

script:
  - sh -c "if [ '$SNIFF' != '0' ]; then travis/ext-sniff.sh $DB $TRAVIS_PHP_VERSION $EXTNAME $NOTESTS; fi"
  - sh -c "if [ '$IMAGE_ICC' != '0' ]; then travis/check-image-icc-profiles.sh $DB $TRAVIS_PHP_VERSION $NOTESTS; fi"
  - sh -c "if [ '$EPV' != '0' ] && [ '$NOTESTS' = '1' ]; then phpBB/vendor/bin/EPV.php run --dir='phpBB/ext/$EXTNAME/'; fi"
  - sh -c "if [ '$NOTESTS' != '1' ]; then phpBB/vendor/bin/phpunit --configuration phpBB/ext/$EXTNAME/travis/phpunit-$DB-travis.xml --bootstrap ./tests/bootstrap.php; fi"
Ta cần thay đổi 3 dòng sau:
Chép
    - EXTNAME="vinabb/demo" # CHANGE name of the extension HERE
Thay vinabb/demo bằng tên định danh gói mở rộng của bạn. Nếu bạn đặt nhiều gói mở rộng nằm cùng một dự án (repository) trên GitHub, thì chỉ cần nhập phần tên bạn thôi, trong ví dụ trên sẽ là EXTNAME="vinabb".
Chép
branches:
  only:
    - master
Nếu bạn đặt tên nhánh khác mặc định là master, thì hãy sửa lại cho đúng.
Chép
  - ../vinabb/demo/travis/prepare-epv.sh $EPV $NOTESTS
Trong đó, vinabb là tên tài khoản GitHub và demo là tên dự án.

Cũng từ thư mục gốc gói mở rộng, ta tạo thêm thư mục travis. Trong thư mục này, ta sẽ tạo 2 tập tin thực thi cho môi trường máy ảo khi chạy trên Travis CI.
  • Tạo tập tin travis/prepare-phpbb.sh với nội dung sau:
    Chép
    #!/bin/bash
    set -e
    set -x
    
    EXTNAME=$1
    BRANCH=$2
    EXTPATH_TEMP=$3
    
    # Copy extension to a temp folder
    mkdir ../../tmp
    cp -R . ../../tmp
    cd ../../
    
    # Clone phpBB
    git clone --depth=1 "git://github.com/phpbb/phpbb.git" "phpBB3" --branch=$BRANCH
    Tập tin này sẽ cài đặt gói mở rộng của bạn vào một bản cài đặt phpBB.
  • Tạo tập tin travis/prepare-epv.sh với nội dung sau:
    Chép
    #!/bin/bash
    set -e
    set -x
    
    EPV=$1
    NOTESTS=$2
    
    if [ "$EPV" == "1" -a "$NOTESTS" == "1" ]
    then
    	cd phpBB
    	composer require phpbb/epv:dev-master --dev --no-interaction
    	cd ../
    fi
    Tập tin này tải về phpBB EPV và kiểm tra gói mở rộng của bạn.
  • Cuối cùng, điều quan trọng, bạn phải cấp quyền thực thi cho 2 tập tin .sh này trước khi cập nhật lên GitHub. Trên Windows, chúng ta phải dùng lệnh sau:
    Chép
    git update-index --chmod=+x travis/prepare-phpbb.sh
    Chép
    git update-index --chmod=+x travis/prepare-epv.sh
    Chép
    git commit -m 'Set executable permissions for .sh files'
    Chép
    git push
Vào https://travis-ci.org/, liên kết tài khoản GitHub của bạn và thêm vào các dự án muốn kiểm thử trước khi chạy. Giờ đây, mỗi lần bạn cập nhật thay đổi mã trên GitHub, các thao tác kiểm thử sẽ chạy đồng bộ trên Travis CI.


Các yêu cầu khác


nedka

nedka

Quản trị viên
19/09/2016 16:06

...


Đóng gói và phát hành


nedka

nedka

Quản trị viên
19/09/2016 16:06

...


Quan điểm

  • Không đề cập chính trị, tôn giáo, nội dung đồi trụy.
  • Giữ gìn sự trong sáng của Tiếng Việt.
  • Không chia sẻ phần mềm vi phạm bản quyền.
  • Không rao vặt và không nhận đặt quảng cáo.
  • Dù trong túi hết tiền thì diễn đàn phpBB của anh cũng phải ngay ngắn.

Chuyện tình VinaBB

17/07/2004: Yêu phpBB từ phiên bản 2.0.10.
22/10/2006: Cất tiếng cười chào đời.
11/06/2007: Chính thức định cư trên Olympus, Sao Hỏa.
11/06/2009: Mất liên lạc với Trái Đất. [ Phiên bản 2007 ]
28/07/2016: Trôi dạt đến mặt trăng Rhea, Sao Thổ.
12/12/2016: Cuộc hành trình mới lại bắt đầu…

Code in Viet Nam

Cống hiến hết mình vì Tổ Quốc Việt Nam Xã Hội Chủ Nghĩa

Quản trị viên

nedka

VinaBB

NEDKA Solutions

Đơn vị chủ quản

Chúng tôi chịu trách nhiệm toàn bộ nội dung có trên VinaBB.vn trước pháp luật.