monanadmin / monan

Repositório organizacional das atividades dos macro-grupos do MONAN - Model for Ocean-laNd-Atmosphere PredictioN
14 stars 10 forks source link

[GCC] PAD: Implementação nova versão do GF - Aceite PR #509

Closed joaomas closed 3 weeks ago

joaomas commented 1 month ago

:people_holding_hands: User Story

COMO (...) QUEREMOS (...) PARA (...)

:clipboard: Critérios de aceite de conclusão da Issue

:pencil: Detalhamento adicional da atividade

:comet: Impactos

-.

:link: Dependências

504 - OK

:hammer_and_wrench: Solução

Analise da DTN-03 com o Pull Request

Ações após PR

Step 1: From your project repository, check out a new branch and test the changes.

git checkout -b saulorfreitas-develop develop git pull https://github.com/saulorfreitas/MONAN_Phys_SRF_v1.git develop

Step 2: Merge the changes and update on GitHub.

git checkout develop git merge --no-ff saulorfreitas-develop git push origin develop

O conflito se deu pois o PR foi feito antes da correção do bug pelo LF. Foi então alterado para a solução do LF.

Image

Image

Após solução o PR foi finalizado com sucesso, com o código do PR mergeado no Develop.

Image

Antes de rodar o cron foi renomeado o arquivo /mnt/beegfs/monan/scripts_CD-CT_dev/scripts_CD-CT/datain/fixed/x1.1024002.static.nc para OLD para forçar a geração deste na etapa do pré. Após o arquivo foi removido.

O Cron DEV na Egeon atualizou com a nova versão do Dev.

MONAN branch name in use: develop
convert_mpas branch name in use: develop
==> Source dir already exists, updating it ...

Your branch is up to date with 'origin/develop'.
warning: Pulling without specifying how to reconcile divergent branches is
discouraged. You can squelch this message by running one of the following
commands sometime before your next pull:

  git config pull.rebase false  # merge (the default strategy)
  git config pull.rebase true   # rebase
  git config pull.ff only       # fast-forward only

You can replace "git config" with "git config --global" to set a default
preference for all repositories. You can also pass --rebase, --no-rebase,
or --ff-only on the command line to override the configured default per
invocation.

From https://github.com/monanadmin/MONAN-Model
   80c8ab3..667c0af  develop    -> origin/develop
Updating 80c8ab3..667c0af
Fast-forward
 GF_ConvPar_nml                                     |   122 +
 Makefile                                           |     4 +-
 comp_instructions                                  |    18 +
 modif_v0.2_to_v0.6.md                              |    32 +
 monan_readme.md                                    |    64 +
 src/core_atmosphere/Makefile                       |     4 +-
 src/core_atmosphere/Registry.xml                   |   136 +-
 .../diagnostics/mpas_isobaric_diagnostics.F        |     2 +-
 .../dynamics/mpas_atm_time_integration.F           |   997 +-
 src/core_atmosphere/mpas_atm_core.F                |     2 +-
 src/core_atmosphere/mpas_atm_halos.F               |    15 +
 src/core_atmosphere/physics/Makefile               |     9 +-
 src/core_atmosphere/physics/mpas_atmphys_control.F |    27 +-
 src/core_atmosphere/physics/mpas_atmphys_driver.F  |    25 +-
 .../physics/mpas_atmphys_driver_cloudiness.F       |    46 +
 .../physics/mpas_atmphys_driver_convection.F       |   703 +-
 src/core_atmosphere/physics/mpas_atmphys_init.F    |     2 +-
 .../physics/mpas_atmphys_interface.F               |    45 +-
 .../physics/mpas_atmphys_packages.F                |     9 +-
 .../physics/mpas_atmphys_todynamics.F              |    55 +-
 src/core_atmosphere/physics/mpas_atmphys_vars.F    |    30 +-
 src/core_atmosphere/physics/physics_monan/Makefile |    41 +
 .../physics/physics_monan/lib_module_cu_gf.monan.F |  1728 +++
 .../physics/physics_monan/modConstants.F           |   293 +
 .../physics/physics_monan/modGate.F                |    76 +
 .../physics/physics_monan/modHenrysLawCts.F        |   532 +
 .../physics/physics_monan/modVector.F              |   228 +
 .../physics/physics_monan/module_cu_gf.monan.F     | 11310 ++++++++++++++++
 .../physics/physics_monan/module_mp_cldfra_cb.F    |   353 +
 .../physics/physics_monan/orig/modConvParGF.F90    | 13037 +++++++++++++++++++
 .../physics/physics_monan/orig/modConvParGF.F90_IK | 12886 ++++++++++++++++++
 .../physics/physics_monan/orig/modConvParGF.F90_KI | 13037 +++++++++++++++++++
 .../physics_monan/utils_monan/modConstants.F90     |   293 +
 .../physics/physics_monan/utils_monan/modGate.F90  |    76 +
 .../physics_monan/utils_monan/modHenrysLawCts.F90  |   532 +
 .../physics_monan/utils_monan/modVector.F90        |   228 +
 src/core_init_atmosphere/Registry.xml              |     5 +
 37 files changed, 56921 insertions(+), 81 deletions(-)
 create mode 100644 GF_ConvPar_nml
 create mode 100644 comp_instructions
 create mode 100644 modif_v0.2_to_v0.6.md
 create mode 100644 monan_readme.md
 create mode 100644 src/core_atmosphere/physics/physics_monan/Makefile
 create mode 100644 src/core_atmosphere/physics/physics_monan/lib_module_cu_gf.monan.F
 create mode 100644 src/core_atmosphere/physics/physics_monan/modConstants.F
 create mode 100644 src/core_atmosphere/physics/physics_monan/modGate.F
 create mode 100644 src/core_atmosphere/physics/physics_monan/modHenrysLawCts.F
 create mode 100644 src/core_atmosphere/physics/physics_monan/modVector.F
 create mode 100644 src/core_atmosphere/physics/physics_monan/module_cu_gf.monan.F
 create mode 100644 src/core_atmosphere/physics/physics_monan/module_mp_cldfra_cb.F
 create mode 100644 src/core_atmosphere/physics/physics_monan/orig/modConvParGF.F90
 create mode 100644 src/core_atmosphere/physics/physics_monan/orig/modConvParGF.F90_IK
 create mode 100644 src/core_atmosphere/physics/physics_monan/orig/modConvParGF.F90_KI
 create mode 100644 src/core_atmosphere/physics/physics_monan/utils_monan/modConstants.F90
 create mode 100644 src/core_atmosphere/physics/physics_monan/utils_monan/modGate.F90
 create mode 100644 src/core_atmosphere/physics/physics_monan/utils_monan/modHenrysLawCts.F90
 create mode 100644 src/core_atmosphere/physics/physics_monan/utils_monan/modVector.F90
==> Successfully checked out and updated: develop
commit 667c0af257387e333122c9b2e0073d36e48129c3
Merge: 80c8ab3 1b3d680
Author: João Messias <41485190+joaomas@users.noreply.github.com>
Date:   Wed Jun 5 10:51:49 2024 -0300

    Merge pull request #7 from saulorfreitas/develop

    Develop with the first MONAN atmos physics package.
    Issue #509 (repo - monan).

Discussões sobre PR x GitFlow e PR

Image

"Pull Request

Podemos trabalhar com Git Flow e Pull Request. Mas, isso não é gerenciado pelo plugin, quando o utilizamos. Tudo que vem das branches de melhoria (feature, bugfix etc) pode ser enviado para a develop via Pull Request, ao invés de um merge manual, até ai bem tranquilo. Assim conseguimos garantir que o time está revisando tudo que chega na branch develop.

Para a branch master, as coisas mudam um pouco. As branches que originam merges para a master (branches de “preparo de versão” — release e hotfix) também precisam fazer o merge para a develop. O processo para que PRs para a master funcione, basicamente consiste em, após o PR criado, aprovado e “mergeado” da release/hotfix para master, fazemos a finalização da release/hotfix normalmente pela linha de comando. Usando comandos do Git Flow, tudo funciona normal, e com comandos do Git podemos “pular” a etapa de merge com a master.

Em alguns times que utilizam processos semelhantes é possível observar a adoção apenas de pull request a partir de hotfix dado que todo código feito nessa branch não é validada e revisada em outra etapa. Branches de release são iniciadas a partir da develop, branch previamente validada. "

"So, why don't we use git-flow at GitHub? Well, the main issue is that we deploy all the time. The git-flow process is designed largely around the "release". We don't really have "releases" because we deploy to production every day - often several times a day. We can do so through our chat room robot, which is the same place our CI results are displayed. We try to make the process of testing and shipping as simple as possible so that every employee feels comfortable doing it."

So, what is GitHub Flow?

"Choosing a Git pull request workflow

There are multiple git pull request workflows to choose from in addition to the GitHub flow model described above, and each one offers unique advantages that might suit your team. However, at least one of these—the centralized workflow—can’t accommodate pull requests and should be avoided if you prefer to leverage such requests in your own project's history.

There are a few additional Git workflow models you might consider trying if you are planning on using pull requests, such as the afore-mentioned Gitflow model, the feature branch workflow model, and the forking workflow model. Each of these is great for certain applications and not so great for others. The forking model is particularly well-suited to open projects with many different collaborators, for instance, as repositories are neatly copied each time they’re forked."

Image

"Manoj Shetty March 26, 2014

Hi,

One workflow for this problem can be:

1) Master branch is the production ready branch. Only the Team leader has permissions to write or merge on Master branch.

2) Before starting the next Iteration for the Sprint release, you can create a new Release branch 2.0 on the Remote Repo

3) Every developer will checkout from Release 2.0 branch before coding. Then create a new Feature branch based on Release branch.

4) Developer will do coding and commit on Local Repo - Feature branch

5) Developer will push the Local Repo Feature branch to Remote repo Feature branch

6) by this time, Bamboo build will trigger for the Remote - Feature branch - if Build pass then Pull request can be created

7) If build pass, Developer creates the Pull request and assign to Team leader for code review

8) Team leader will do the code review and merge Feature branch to Release branch - later the Bamboo build will trigger on Release branch

9) later the Feature branch will be deleted

10) after all Features are developed and merged, finally when the Release branch is stable and build is also pass.

11) QA team will do all testing on Release branch

12) if all pass on Release branch, Team leader will merge from Release branch to Master branch.

regards"

:rotating_light: Problemas encontrados

-.

:white_check_mark: Conclusão

:spiral_calendar: Trabalhos Futuros

-.

joaomas commented 1 month ago

@cfbastarz estamos trabalhando com o PR do Saulo .

https://github.com/monanadmin/MONAN-Model/pull/7